home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Inne / Gry / OpenArena / baseoa / pak6-misc.pk3 / botfiles / fuzw.c < prev    next >
Text File  |  2007-10-15  |  4KB  |  282 lines

  1. /*
  2. ===========================================================================
  3. Copyright (C) 2006 Dmn_clown (aka: Bob Isaac (rjisaac@gmail.com))
  4.  
  5. This file is part of Open Arena and is based upon Mr. Elusive's fuzzy logic
  6. system found in Quake 3 Arena.
  7.  
  8. Open Arena is free software; you can redistribute it
  9. and/or modify it under the terms of the GNU General Public License as
  10. published by the Free Software Foundation; either version 2 of the License,
  11. or (at your option) any later version.
  12.  
  13. Open Arena is distributed in the hope that it will be
  14. useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. GNU General Public License for more details.
  17.  
  18. You should have received a copy of the GNU General Public License
  19. along with Foobar; if not, write to the Free Software
  20. Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  21. ===========================================================================
  22. */
  23.  
  24. weight "BFG10K"
  25. {
  26.     switch(INVENTORY_BFG10K)
  27.     {
  28.         case 1: return 0;
  29.         default: 
  30.         {
  31.         switch(INVENTORY_BFGAMMO)
  32.             {
  33.             case 1: return 0;
  34.             default: return BFW;
  35.             }
  36.         }
  37.     } 
  38.  
  39. weight "Chaingun"
  40. {
  41.     switch(INVENTORY_CHAINGUN)
  42.     {
  43.         case 1: return 0;
  44.         default: 
  45.         {
  46.         switch(INVENTORY_BELT)
  47.             {
  48.             case 1: return 0;
  49.             default: 
  50.                 {
  51.                 switch(ENEMY_HORIZONTAL_DIST)
  52.                     {
  53.                     case 900: return CGW;
  54.                     default: return $evalint(CGW*0.1);
  55.                     }
  56.                 }
  57.             }
  58.         }
  59.     } 
  60.  
  61.  
  62. weight "Gauntlet"
  63. {
  64.     switch(INVENTORY_GAUNTLET)
  65.         {
  66.         case 1: return 0;
  67.         default: return GTW;
  68.         } 
  69.  
  70. weight "Grappling Hook"
  71. {
  72.     switch(INVENTORY_GRAPPLINGHOOK)
  73.     {
  74.         case 1: return 0;
  75.         default: return GRW;
  76.     } 
  77.  
  78.  
  79. weight "Grenade Launcher"
  80. {
  81.     switch(INVENTORY_GRENADELAUNCHER)
  82.     {
  83.         case 1: return 0;
  84.         default: 
  85.         {
  86.         switch(INVENTORY_GRENADES)
  87.             {
  88.             case 1: return 0;
  89.             default: 
  90.                 {
  91.                 switch(ENEMY_HORIZONTAL_DIST)
  92.                     {
  93.                     case 600: return GLW;
  94.                     default: return $evalint(GLW*0.1);
  95.                     }
  96.                 }
  97.             }
  98.         }
  99.     } 
  100.  
  101. weight "Lightning Gun"
  102. {
  103.     switch(INVENTORY_LIGHTNING)
  104.     {
  105.         case 1: return 0;
  106.         default: 
  107.         {
  108.         switch(INVENTORY_LIGHTNINGAMMO)
  109.             {
  110.             case 1: return 0;
  111.             default: 
  112.                 {
  113.                 switch(ENEMY_HORIZONTAL_DIST)
  114.                     {
  115.                     case 768: return LGW;
  116.                     default: return $evalint(LGW*0.1);
  117.                     }
  118.                 }
  119.             }
  120.         }
  121.     } 
  122. }
  123.  
  124. weight "Machinegun"
  125. {
  126.     switch(INVENTORY_MACHINEGUN)
  127.     {
  128.         case 1: return 0;
  129.         default: 
  130.         {
  131.         switch(INVENTORY_BULLETS)
  132.             {
  133.             case 1: return 0;
  134.             default: 
  135.                 {
  136.                 switch(ENEMY_HORIZONTAL_DIST)
  137.                     {
  138.                     case 800: return MGW;
  139.                     default: return $evalint(MGW*0.1);
  140.                     }
  141.                 }
  142.             }
  143.         }
  144.     } 
  145.  
  146. weight "Nailgun"
  147. {
  148.     switch(INVENTORY_NAILGUN)
  149.     {
  150.         case 1: return 0;
  151.         default: 
  152.         {
  153.         switch(INVENTORY_NAILS)
  154.             {
  155.             case 1: return 0;
  156.             default: 
  157.                 {
  158.                 switch(ENEMY_HORIZONTAL_DIST)
  159.                     {
  160.                     case 800: return NGW;
  161.                     default: return $evalint(NGW*0.1);
  162.                     }
  163.                 }
  164.             }
  165.         }
  166.     } 
  167.  
  168. weight "Plasma Gun"
  169. {
  170.     switch(INVENTORY_PLASMAGUN)
  171.     {
  172.         case 1: return 0;
  173.         default: 
  174.         {
  175.         switch(INVENTORY_CELLS)
  176.             {
  177.             case 1: return 0;
  178.             default: 
  179.                 {
  180.                 switch(ENEMY_HORIZONTAL_DIST)
  181.                     {
  182.                     case 2000: return PGW;
  183.                     default: return $evalint(PGW*0.1);
  184.                     }
  185.                 }
  186.             }
  187.         }
  188.     } 
  189.  
  190. weight "Prox Launcher"
  191. {
  192.     switch(INVENTORY_PROXLAUNCHER)
  193.     {
  194.         case 1: return 0;
  195.         default: 
  196.         {
  197.         switch(INVENTORY_MINES)
  198.             {
  199.             case 1: return 0;
  200.             default: 
  201.                 {
  202.                 switch(ENEMY_HORIZONTAL_DIST)
  203.                     {
  204.                     case 200: return PXW;
  205.                     default: return $evalint(PXW*0.1);
  206.                     }
  207.                 }
  208.             }
  209.         }
  210.     }
  211. }
  212.  
  213. weight "Railgun"
  214. {
  215.     switch(INVENTORY_RAILGUN)
  216.     {
  217.         case 1: return 0;
  218.         default: 
  219.         {
  220.         switch(INVENTORY_SLUGS)
  221.             {
  222.             case 1: return 0;
  223.             default: return RGW;
  224.             }
  225.         }
  226.     } 
  227.  
  228.  
  229. weight "Rocket Launcher"
  230. {
  231.     switch(INVENTORY_ROCKETLAUNCHER)
  232.     {
  233.         case 1: return 0;
  234.         default: 
  235.         {
  236.         switch(INVENTORY_ROCKETS)
  237.             {
  238.             case 1: return 0;
  239.             default: 
  240.                 {
  241.                 switch(ENEMY_HORIZONTAL_DIST)
  242.                     {
  243.                     case 4000: return RLW;
  244.                     default: return $evalint(RLW*0.1);
  245.                     }
  246.                 }
  247.             }
  248.         }
  249.     } 
  250.  
  251. weight "Shotgun"
  252. {
  253.     switch(INVENTORY_SHOTGUN)
  254.     {
  255.         case 1: return 0;
  256.         default: 
  257.         {
  258.         switch(INVENTORY_SHELLS)
  259.             {
  260.             case 1: return 0;
  261.             default: 
  262.                 {
  263.                 switch(ENEMY_HORIZONTAL_DIST)
  264.                     {
  265.                     case 600: return SGW;
  266.                     default: return $evalint(SGW*0.1);
  267.                     }
  268.                 }            
  269.             }
  270.         }
  271.     } 
  272. }