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

  1. movecrate local.cratetomove local.cratetomoveto:
  2.     wait 1
  3.     if(self.thinkstate != "idle" && self.thinkstate != "currious")
  4.         end
  5.     if(self.cratebreak == 1)
  6.         end    
  7.     self alarmthread dropthecrate
  8.     if(self.gun == "" || self.gun == NULL || self.gun == NIL || self.gun == "none")
  9.         self gun "walter p38"
  10.     waitframe
  11.     self holster
  12.     self type_attack "alarm"
  13.     self type_disguise "none"
  14.     local.o = local.cratetomove gettagposition "pickup"
  15.     self exec global/walkto.scr local.o
  16.     self waittill movedone
  17.     local.o = local.cratetomove gettagposition "box"
  18.     self exec global/turnto.scr local.o
  19.     local.distance = vector_length (self.origin - local.o)
  20.     println "distance to pickup crate '" local.o "' is " local.distance
  21.     if(local.distance > 45 )
  22.     {
  23.         println "crate guy " self.targetname " failed to get to " local.o
  24.         if(self.thinkstate == "curious")
  25.             println "cause of failure: curious"
  26.         self waitthread dropthecrate
  27.         end
  28.     }
  29.     self anim crate_pickup1
  30.     self waittill animdone
  31.     self.hasthecrate = 1
  32.     local.cratetomove hide
  33.     self anim crate_pickup2
  34.     self waittill animdone
  35.     local.o = local.cratetomoveto gettagposition "pickup"
  36.     self exec global/moveto.scr "anim/crate_walk.scr" local.o
  37.     if(self.cratebreak != 1)
  38.     {
  39.         self waittill movedone
  40.         local.o = local.cratetomoveto gettagposition "box"
  41.         local.distance = vector_length (self.origin - local.o)
  42.         println "distance to putdown crate '" local.o "' is " local.distance
  43.         if(local.distance > 45)
  44.          {
  45.              println "crate guy " self.targetname " cannot find his way to box drop location at " local.o
  46.              if(self.thinkstate == "curious")
  47.                  println "cause of failure: curious"
  48.             self waitthread dropthecrate
  49.              end
  50.          }
  51.         self exec global/turnto.scr local.o
  52.         self anim crate_putdown1
  53.         self waittill animdone
  54.         wait .05
  55.         local.cratetomoveto show
  56.         self.hasthecrate = 0
  57.         self anim crate_putdown2
  58.         self waittill animdone
  59.     }
  60. end
  61.  
  62. dropthecrate:
  63.     if(self.cratebreak == 1)
  64.         end
  65.     self.cratebreak = 1
  66.     self exec global/disable_ai.scr
  67.     self turnto NULL
  68.     waitframe
  69.     if(self.hasthecrate == 1)
  70.     {    
  71.         self anim_noclip crate_drop
  72.         wait .2
  73.         self anim crate_detach
  74.     }
  75.     self turnto $player
  76.     if(self.gun == "" || self.gun == NULL || self.gun == NIL || self.gun == "none")
  77.         self gun "walter p38"
  78.     waitframe
  79.     self unholster
  80.     self exec global/enable_ai.scr
  81. end
  82.