Author Topic: Tripwire/Mines on Flags/Spawns  (Read 1318 times)

Offline uancletus

  • Rank: Private
  • *
  • Posts: 13
    • http://www.uangames.net
Tripwire/Mines on Flags/Spawns
« on: August 24, 2007, 02:04:16 am »
Here is the code guys, it makes it 10 times easier for you  8)
What this does is allow you to control the distance from a flag/spawnpoint that you can plant landmines/tripwires. We have a few tiny maps that we like to fight for most trips/mines but couldn't do it! Now you can!

Tested by me, found no glitches but please post any if you find em.

To see the formatted/colored code in an easier to read format, visit HERE

--------------
Insert all of the red code where it should be in the files, remember to make each portion look exactly like I have it. Black code is the code that is already in the file, use it to figure out where the code goes. Blue code indicates which file it is in.

**Tripwires**

In _ex_varcache.gsc:

   //****************************************************************************
   // eXtreme+ tripwires
   //****************************************************************************
   level.ex_tweapon = [[level.ex_drm]]("ex_tripwire", 0, 0, 3, "int");
   level.ex_tweaponlimit = [[level.ex_drm]]("ex_tripwire_limit", 5, 1, 10, "int");
   level.ex_tweaponwarning = [[level.ex_drm]]("ex_tripwire_warning", 1, 0, 1, "int");
   level.ex_tweapon_radius = 12 * [[level.ex_drm]]("ex_tripwire_radius",12, 1, 999, "int");
   level.ex_tripwire_spawn_dist = [[level.ex_drm]]("ex_tripwire_spawn_dist", 120, 0, 999, "int");
   level.ex_tripwire_flag_dist = [[level.ex_drm]]("ex_tripwire_flag_dist", 150, 0, 999, "int");


In _ex_tripwires.gsc:

   for(i=0;i<spawnpoints.size;i++)
   {
      spawnpoint = spawnpoints;
      if(distance(self.origin,spawnpoint.origin) < (level.ex_tripwire_spawn_dist) && (level.ex_tripwire_spawn_dist || 0))
      {
         self iprintln(&"TRIPWIRE_TOO_CLOSE_BASE");
         return true;
      }
   }

Still in _ex_tripwires.gsc:

   for(i = 0; i < flags.size; i++)
   {
      flag = flags;

      if(distance(self.origin,flag.origin) < (level.ex_tripwire_flag_dist) && (level.ex_tripwire_flag_dist || 0))
      {         
         self iprintln(&"TRIPWIRE_TOO_CLOSE_FLAG");
         return true;
      }
   }

In weaponcontrol.cfg:

   // display warning for teammates
   // 0 = disable, 1 = enable, default = 0
   //set ex_tripwire_warning "0"

   // distance from spawns/flags that you can plant a tripwire
   // set to "0" to be able to plant on a flag or spawn, max = 999
   set ex_tripwire_spawn_dist "0" //default 120
   set ex_tripwire_flag_dist "0" //default 150


   // tripwire explosion damage radius (in feet)
   // min = 1, max = 999 (lots of damage), default = 12
   //set ex_tripwire_radius "20"


**Landmines**

In _ex_varcache.gsc:

   level.ex_allow_mine_rifle = [[level.ex_drm]]("ex_allow_mine_rifle", 2, 0, 9, "int");
   level.ex_allow_mine_semiauto = [[level.ex_drm]]("ex_allow_mine_semiauto", 2, 0, 9, "int");
   level.ex_allow_mine_smg = [[level.ex_drm]]("ex_allow_mine_smg", 2, 0, 9, "int");
   level.ex_allow_mine_mg = [[level.ex_drm]]("ex_allow_mine_mg", 2, 0, 9, "int");
   level.ex_allow_mine_shotgun = [[level.ex_drm]]("ex_allow_mine_shotgun", 2, 0, 9, "int");
   level.ex_landmine_spawn_dist = [[level.ex_drm]]("ex_landmine_spawn_dist", 120, 0, 999, "int");
   level.ex_landmine_flag_dist = [[level.ex_drm]]("ex_landmine_flag_dist", 150, 0, 999, "int");


In _landmines.gsc:

   for(i=0;i<spawnpoints.size;i++)
   {
      spawnpoint = spawnpoints;
      if(distance(self.origin,spawnpoint.origin) < (level.ex_landmine_spawn_dist) && (level.ex_landmine_spawn_dist || 0))
      {
         self iprintln(&"LANDMINES_TOO_CLOSE_BASE");
         return true;
      }
   }

Still in _landmines.gsc:

   for(i = 0; i < flags.size; i++)
   {
      flag = flags;

      if(distance(self.origin,flag.origin) < (level.ex_landmine_flag_dist) && (level.ex_landmine_flag_dist || 0))
      {
         self iprintln(&"LANDMINES_TOO_CLOSE_FLAG");
         return true;
      }
   }

In weaponcontrol.cfg:

   // Check surfacetype before planting mine
   // If enabled you can only plant mines on "beach", "dirt", "grass", "ice", "mud", "sand" and "snow".
   // 0 = disabled (default)
   // 1 = enabled
   //set ex_landmine_surfacecheck "1"

   // distance from spawns/flags that you can plant a landmine
   // set to "0" to be able to plant on a flag or spawn, max = 999
   set ex_landmine_spawn_dist "0" //default 120
   set ex_landmine_flag_dist "0" //default 150

Offline uancletus

  • Rank: Private
  • *
  • Posts: 13
    • http://www.uangames.net
Tripwire/Mines on Flags/Spawns
« Reply #1 on: August 25, 2007, 03:17:41 am »
Sorry to double-post, but has anyone taken a look at this to see if it could be added in the next release?

Offline Joker{eXtreme}

  • Rank: Private
  • *
  • Posts: 6108
    • http://www.mycallofduty.com
Tripwire/Mines on Flags/Spawns
« Reply #2 on: August 25, 2007, 10:48:20 am »
Not yet m8 -- but it is on the list ;)