home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 2003 June / macformat-130.iso / mac / Reviewed⁄Demos / Spearhead Demo / demota / pak1.pk3 / global / mg42.scr < prev    next >
Encoding:
Text File  |  2002-10-21  |  4.3 KB  |  159 lines

  1. //dont forget to set "playerusable" "0" in the editor (if the player cant use the turret) or
  2. // set "maxYawOffset" "x" in the editor to limit the number of degrees of freedom the palyer can 
  3. //turn the turret. note 180 allows 360 degrees of freedom.
  4.  
  5.  
  6.  
  7. //////////////////////////////////
  8. main local.target local.path local.first_trigger local.second_trigger local.gunner local.accuracy:
  9.     println local.target " " local.path " " local.first_trigger " " local.second_trigger " " local.gunner " " local.fire_time
  10.     if (local.first_trigger == NULL) 
  11.         println self  " local.trigger1  is nil"
  12.     if (local.second_trigger == NULL) 
  13.         println self  " local.trigger2  is nil"
  14.     if (local.gunner == NULL) 
  15.         println self  " local.gunner  is nil"
  16.  
  17.     waitthread INIT local.gunner
  18.     if (local.accuracy)
  19.         local.gunner accuracy local.accuracy
  20.     self setAimTarget local.target
  21.  
  22.     if ( (int (getcvar developer)) )
  23.     {
  24.         local.chair = spawn script_model model models/items/explosive
  25.         local.chair glue local.target
  26.     }
  27.  
  28.     if (local.second_trigger != 0)
  29.         thread turret_second_trigger local.second_trigger
  30.     if (local.path != 0)
  31.         local.target thread turret_target local.path
  32.  
  33. local.first_trigger waittill trigger
  34.  
  35.     self startFiring
  36. end
  37.  
  38. /////////////////
  39. turret_second_trigger local.second_trigger:
  40. local.second_trigger waittill trigger
  41.     
  42.     self startFiring
  43.     self setaimtarget $player
  44. end
  45.  
  46. ///////////////
  47. turret_target local.path:
  48. while (1)
  49. {
  50. //    self flypath local.path
  51.     self followpath local.path
  52.     self waitmove
  53. }
  54. end
  55.  
  56. ///////////
  57. INIT local.gunner:
  58.     local.gunner accuracy 100
  59.     self TurnSpeed 45
  60.     self burstFireSettings 10 15 4 5
  61.     self tracerFrequency 1
  62. end
  63.  
  64. /////////////
  65. multi_trigger local.target local.path local.first_trigger local.second_trigger local.gunner:
  66.     if (local.first_trigger == NULL) 
  67.         println self  " local.trigger1  is nil "
  68.     if (local.second_trigger == NULL) 
  69.         println self  " local.trigger2  is nil"
  70.     if (local.gunner == NULL) 
  71.         println self  " local.gunner  is nil"
  72.     println local.target " " local.path " " local.first_trigger " " local.second_trigger " " local.gunner
  73.  
  74.     //spawn script_model model models/furniture/simplechair "targetname" (local.target + "_test")
  75.     //(local.target + "_test") glue local.target
  76.     //(local.target + "_test") notsolid
  77.  
  78.     waitthread INIT local.gunner
  79.     local.target thread turret_target local.path
  80.     thread turret_second_trigger_loop local.second_trigger
  81.  
  82.     while (1)
  83.     {
  84.         local.first_trigger waittill trigger
  85.         self setAimTarget local.target
  86.         self startFiring
  87.         wait 1
  88.         self stopFiring
  89.     }
  90. end
  91.  
  92.  
  93. /////////////
  94. extra_trigger local.target local.path local.first_trigger:
  95.     println local.first_trigger " " local.target " " local.path 
  96.     if (local.first_trigger == NULL) 
  97.         println self  " local.trigger1  is null for "  local.target local.path 
  98.  
  99.     local.target thread turret_target local.path
  100.     //spawn script_model model models/furniture/simplechair "targetname" (local.target + "_test")
  101.     //(local.target + "_test") glue local.target
  102.     //(local.target + "_test") notsolid
  103.  
  104.     while (1)
  105.     {
  106.         local.first_trigger waittill trigger
  107.         self setAimTarget local.target
  108.         self startFiring
  109.         wait 1
  110.         self stopFiring
  111.     }
  112. end
  113.  
  114. /////////////////
  115. turret_second_trigger_loop local.second_trigger:
  116.  
  117. while (1)
  118. {
  119.     println local.second_trigger
  120.     local.second_trigger waittill trigger
  121.     self setaimtarget $player
  122.     self burstFireSettings 0 0 0 0
  123.     self startFiring
  124.     wait 1
  125.     self burstFireSettings 4 6 1 2
  126.     self stopFiring
  127. }
  128. end
  129.  
  130. /////////////////
  131. JEEP_SETUP local.trigger1 local.trigger2 local.gunner local.target:
  132. //$mg42_1 thread global/mg42.scr::JEEP_SETUP $mg42_1_trigger1 $mg42_1_trigger2 $mg42_1_gunner level.playertanktarget
  133.     println local.trigger1 " " local.trigger2 " " local.gunner " " local.target
  134.     if (local.trigger1 == NULL) 
  135.         println self  " local.trigger1 is NULL"
  136.     if (local.trigger2 == NULL) 
  137.         println self  " local.trigger2 is NULL"
  138.     if (local.gunner == NULL) 
  139.         println self  " local.gunner is NULL"
  140.     if (local.target == NULL) 
  141.         println self " local.target is NULL"
  142.  
  143.     local.gunner accuracy 100
  144.     self TurnSpeed 45
  145.     self burstFireSettings 10 15 4 5
  146.     self tracerFrequency 1
  147.  
  148. local.trigger1 waittill trigger
  149.  
  150.     self setAimTarget local.target
  151.     self startFiring
  152.  
  153. if (local.trigger2 != 0)
  154. {
  155.     local.trigger2 waittill trigger
  156.     
  157.     self stopfiring
  158. }
  159. end