Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- htg_muscle --
- -- A unit script for High Tech Geologists--
- -- by Firestorm --
- -- s3o pieces
- local base = piece "base"
- local waist = piece "waist"
- local torso = piece "torso"
- local head = piece "head"
- local rarm = piece "rarm"
- local rflare = piece "rflare"
- local larm = piece "larm"
- local lflare = piece "lflare"
- local rleg = piece "rleg"
- local lleg = piece "lleg"
- local linkpoint1 = piece "linkpoint1"
- local linkpoint2 = piece "linkpoint2"
- local linkpoint3 = piece "linkpoint3"
- local linkpoint4 = piece "linkpoint4"
- -- Signals
- local SIG_idle = 1
- local SIG_on = 2
- local SIG_off = 4
- local SIG_stop = 8
- local SIG_walk = 16
- local SIG_swing = 32
- local SIG_putdown = 64
- local SIG_pickup = 128
- local SIG_fists = 256
- local SIG_aim1 = 512
- local SIG_aim2 = 1024
- local SIG_fire1 = 2048
- local SIG_fire2 = 4096
- local attacking
- local slots = {}
- local maxSlots = 4
- local currSlot = 1
- local dropSlot = 1
- -- Transport Slots (tanks FLOZi)
- for i = 1, maxSlots do
- slots[i] = piece ("linkpoint" .. i )
- end
- -- Idle Animation
- local function idle_script()
- SetSignalMask( SIG_idle )
- local VAR_sleep = 120
- --Spring.Echo('Executing Idle')
- Sleep (0)
- end
- -- Transport Animation
- local function pick_up()
- SetSignalMask( SIG_pickup )
- local VAR_sleep = 120
- local VAR_speed = 1
- --Spring.Echo('Executing Pickup')
- --frame1-9
- Turn(torso, x_axis, math.rad(15), VAR_speed)
- Turn(larm, x_axis, math.rad(-15), VAR_speed)
- Turn(rarm, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(30), VAR_speed)
- Turn(larm, x_axis, math.rad(-30), VAR_speed)
- Turn(rarm, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(45), VAR_speed)
- Turn(larm, x_axis, math.rad(-45), VAR_speed)
- Turn(rarm, x_axis, math.rad(-45), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(60), VAR_speed)
- Turn(larm, x_axis, math.rad(-60), VAR_speed)
- Turn(rarm, x_axis, math.rad(-60), VAR_speed)
- Sleep(VAR_sleep)
- --frame5 (arms z_axis)
- Turn(larm, z_axis, math.rad(-25), VAR_speed)
- Turn(rarm, z_axis, math.rad(25), VAR_speed)
- Turn(torso, x_axis, math.rad(75), VAR_speed)
- Turn(larm, x_axis, math.rad(-75), VAR_speed)
- Turn(rarm, x_axis, math.rad(-75), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(60), VAR_speed)
- Turn(larm, x_axis, math.rad(-60), VAR_speed)
- Turn(rarm, x_axis, math.rad(-60), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(45), VAR_speed)
- Turn(larm, x_axis, math.rad(-75), VAR_speed)
- Turn(rarm, x_axis, math.rad(-75), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(30), VAR_speed)
- Turn(larm, x_axis, math.rad(-90), VAR_speed)
- Turn(rarm, x_axis, math.rad(-90), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(15), VAR_speed)
- Turn(larm, x_axis, math.rad(-105), VAR_speed)
- Turn(rarm, x_axis, math.rad(-105), VAR_speed)
- Sleep(VAR_sleep)
- --frame10-14
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-120), VAR_speed)
- Turn(rarm, x_axis, math.rad(-120), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-135), VAR_speed)
- Turn(rarm, x_axis, math.rad(-135), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-150), VAR_speed)
- Turn(rarm, x_axis, math.rad(-150), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-165), VAR_speed)
- Turn(rarm, x_axis, math.rad(-165), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-180), VAR_speed)
- Turn(rarm, x_axis, math.rad(-180), VAR_speed)
- Sleep(VAR_sleep)
- --frame15-19
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-195), VAR_speed)
- Turn(rarm, x_axis, math.rad(-195), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-210), VAR_speed)
- Turn(rarm, x_axis, math.rad(-210), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-225), VAR_speed)
- Turn(rarm, x_axis, math.rad(-225), VAR_speed)
- Sleep(VAR_sleep)
- --(frame18) (arms z_axis)
- WaitForTurn(rarm, x_axis)
- Turn(larm, z_axis, math.rad(0), VAR_speed)
- Turn(rarm, z_axis, math.rad(0), VAR_speed)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-210), VAR_speed)
- Turn(rarm, x_axis, math.rad(-210), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-195), VAR_speed)
- Turn(rarm, x_axis, math.rad(-195), VAR_speed)
- Sleep(VAR_sleep)
- --frame20-24
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-180), VAR_speed)
- Turn(rarm, x_axis, math.rad(-180), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-165), VAR_speed)
- Turn(rarm, x_axis, math.rad(-165), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-150), VAR_speed)
- Turn(rarm, x_axis, math.rad(-150), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-135), VAR_speed)
- Turn(rarm, x_axis, math.rad(-135), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-120), VAR_speed)
- Turn(rarm, x_axis, math.rad(-120), VAR_speed)
- Sleep(VAR_sleep)
- --frame25-29
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-105), VAR_speed)
- Turn(rarm, x_axis, math.rad(-105), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-90), VAR_speed)
- Turn(rarm, x_axis, math.rad(-90), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-75), VAR_speed)
- Turn(rarm, x_axis, math.rad(-75), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-60), VAR_speed)
- Turn(rarm, x_axis, math.rad(-60), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-45), VAR_speed)
- Turn(rarm, x_axis, math.rad(-45), VAR_speed)
- Sleep(VAR_sleep)
- -- frame 30-33
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-30), VAR_speed)
- Turn(rarm, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-15), VAR_speed)
- Turn(rarm, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(0), VAR_speed)
- Turn(rarm, x_axis, math.rad(0), VAR_speed)
- Sleep(VAR_sleep)
- --StartThread( stop )
- end
- local function put_down()
- SetSignalMask( SIG_putdown )
- local VAR_sleep = 120
- local VAR_speed= 1
- --Spring.Echo('Executing Putdown')
- --frame1-9
- Turn(torso, x_axis, math.rad(15), VAR_speed)
- Turn(larm, x_axis, math.rad(-15), VAR_speed)
- Turn(rarm, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(30), VAR_speed)
- Turn(larm, x_axis, math.rad(-30), VAR_speed)
- Turn(rarm, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(45), VAR_speed)
- Turn(larm, x_axis, math.rad(-45), VAR_speed)
- Turn(rarm, x_axis, math.rad(-45), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(60), VAR_speed)
- Turn(larm, x_axis, math.rad(-60), VAR_speed)
- Turn(rarm, x_axis, math.rad(-60), VAR_speed)
- Sleep(VAR_sleep)
- --frame5 (arms z_axis)
- Turn(larm, z_axis, math.rad(-25), VAR_speed)
- Turn(rarm, z_axis, math.rad(25), VAR_speed)
- Turn(torso, x_axis, math.rad(75), VAR_speed)
- Turn(larm, x_axis, math.rad(-75), VAR_speed)
- Turn(rarm, x_axis, math.rad(-75), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(60), VAR_speed)
- Turn(larm, x_axis, math.rad(-60), VAR_speed)
- Turn(rarm, x_axis, math.rad(-60), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(45), VAR_speed)
- Turn(larm, x_axis, math.rad(-75), VAR_speed)
- Turn(rarm, x_axis, math.rad(-75), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(30), VAR_speed)
- Turn(larm, x_axis, math.rad(-90), VAR_speed)
- Turn(rarm, x_axis, math.rad(-90), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(15), VAR_speed)
- Turn(larm, x_axis, math.rad(-105), VAR_speed)
- Turn(rarm, x_axis, math.rad(-105), VAR_speed)
- Sleep(VAR_sleep)
- --frame10-14
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-120), VAR_speed)
- Turn(rarm, x_axis, math.rad(-120), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-135), VAR_speed)
- Turn(rarm, x_axis, math.rad(-135), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-150), VAR_speed)
- Turn(rarm, x_axis, math.rad(-150), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-165), VAR_speed)
- Turn(rarm, x_axis, math.rad(-165), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-180), VAR_speed)
- Turn(rarm, x_axis, math.rad(-180), VAR_speed)
- Sleep(VAR_sleep)
- --frame15-19
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-195), VAR_speed)
- Turn(rarm, x_axis, math.rad(-195), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-210), VAR_speed)
- Turn(rarm, x_axis, math.rad(-210), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-225), VAR_speed)
- Turn(rarm, x_axis, math.rad(-225), VAR_speed)
- Sleep(VAR_sleep)
- --(frame18) (arms z_axis)
- WaitForTurn(rarm, x_axis)
- Turn(larm, z_axis, math.rad(0), VAR_speed)
- Turn(rarm, z_axis, math.rad(0), VAR_speed)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-210), VAR_speed)
- Turn(rarm, x_axis, math.rad(-210), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-195), VAR_speed)
- Turn(rarm, x_axis, math.rad(-195), VAR_speed)
- Sleep(VAR_sleep)
- --frame20-24
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-180), VAR_speed)
- Turn(rarm, x_axis, math.rad(-180), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-165), VAR_speed)
- Turn(rarm, x_axis, math.rad(-165), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-150), VAR_speed)
- Turn(rarm, x_axis, math.rad(-150), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-135), VAR_speed)
- Turn(rarm, x_axis, math.rad(-135), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-120), VAR_speed)
- Turn(rarm, x_axis, math.rad(-120), VAR_speed)
- Sleep(VAR_sleep)
- --frame25-29
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-105), VAR_speed)
- Turn(rarm, x_axis, math.rad(-105), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-90), VAR_speed)
- Turn(rarm, x_axis, math.rad(-90), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-75), VAR_speed)
- Turn(rarm, x_axis, math.rad(-75), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-60), VAR_speed)
- Turn(rarm, x_axis, math.rad(-60), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-45), VAR_speed)
- Turn(rarm, x_axis, math.rad(-45), VAR_speed)
- Sleep(VAR_sleep)
- -- frame 30-33
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-30), VAR_speed)
- Turn(rarm, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(-15), VAR_speed)
- Turn(rarm, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(0), VAR_speed)
- Turn(rarm, x_axis, math.rad(0), VAR_speed)
- Sleep(VAR_sleep)
- --StartThread( stop )
- end
- -- Dying Animation
- local function unit_dying()
- local VAR_sleep = 120
- Spring.Echo('The unit is going down')
- Hide(head)
- Turn(waist, x_axis, math.rad(-.439560))
- Sleep(sleepvar)
- Turn(waist, x_axis, math.rad(-1.0))
- Move(waist, y_axis, -5.000000)
- Move(waist, x_axis, -5.000000)
- Sleep(sleepvar)
- Turn(waist, x_axis, math.rad(-1.439560))
- Move(waist, y_axis, -10.000000)
- Move(waist, x_axis, -10.000000)
- Sleep(sleepvar)
- Move(waist, y_axis, -15.000000)
- Move(waist, x_axis, -15.000000)
- Sleep(VAR_sleep)
- Explode(head, SFX.SHATTER)
- Sleep(VAR_sleep)
- end
- -- Walk Animation
- local function walk()
- SetSignalMask( SIG_walk )
- local VAR_sleep = 120
- local VAR_speed = 1
- --Spring.Echo('The unit should be walking now')
- while true do
- --frame1
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(15), VAR_speed)
- Turn(rleg, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- --frame2
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(30), VAR_speed)
- Turn(rleg, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- --frame3
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(45), VAR_speed)
- Turn(rleg, x_axis, math.rad(-45), VAR_speed)
- Sleep(VAR_sleep)
- --frame4
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(30), VAR_speed)
- Turn(rleg, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- --frame5
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(15), VAR_speed)
- Turn(rleg, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- --frame6
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(0.0000), VAR_speed)
- Turn(rleg, x_axis, math.rad(0.0000), VAR_speed)
- Sleep(VAR_sleep)
- --frame7
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(-15), VAR_speed)
- Turn(rleg, x_axis, math.rad(15), VAR_speed)
- Sleep(VAR_sleep)
- --frame8
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(-30), VAR_speed)
- Turn(rleg, x_axis, math.rad(30), VAR_speed)
- Sleep(VAR_sleep)
- --frame9
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(-45), VAR_speed)
- Turn(rleg, x_axis, math.rad(45), VAR_speed)
- Sleep(VAR_sleep)
- --frame10
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(-30), VAR_speed)
- Turn(rleg, x_axis, math.rad(30), VAR_speed)
- Sleep(VAR_sleep)
- --frame11
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(-15), VAR_speed)
- Turn(rleg, x_axis, math.rad(15), VAR_speed)
- Sleep(VAR_sleep)
- --frame12
- Move(waist, y_axis, math.rad(0), 0)
- Turn(waist, x_axis, math.rad(0), 0)
- Turn(torso, x_axis, math.rad(0), 0)
- Turn(lleg, x_axis, math.rad(0), VAR_speed)
- Turn(rleg, x_axis, math.rad(0), VAR_speed)
- end
- end
- -- Arm Swing animation
- local function arm_swing()
- SetSignalMask( SIG_swing )
- local VAR_sleep = 120
- local VAR_speed = 1
- while true do
- --frame1
- Turn(larm, x_axis, math.rad(-15), VAR_speed)
- Turn(rarm, x_axis, math.rad(15), VAR_speed)
- Sleep(VAR_sleep)
- --frame2
- Turn(larm, x_axis, math.rad(-30), VAR_speed)
- Turn(rarm, x_axis, math.rad(30), VAR_speed)
- Sleep(VAR_sleep)
- --frame3
- Turn(larm, x_axis, math.rad(-45), VAR_speed)
- Turn(rarm, x_axis, math.rad(45), VAR_speed)
- Sleep(VAR_sleep)
- --frame4
- Turn(larm, x_axis, math.rad(-30), VAR_speed)
- Turn(rarm, x_axis, math.rad(30), VAR_speed)
- Sleep(VAR_sleep)
- --frame5
- Turn(larm, x_axis, math.rad(-15), VAR_speed)
- Turn(rarm, x_axis, math.rad(15), VAR_speed)
- Sleep(VAR_sleep)
- --frame6
- Turn(larm, x_axis, math.rad(0.0000), VAR_speed)
- Turn(rarm, x_axis, math.rad(0.0000), VAR_speed)
- Sleep(VAR_sleep)
- --frame7
- Turn(larm, x_axis, math.rad(15), VAR_speed)
- Turn(rarm, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- --frame8
- Turn(larm, x_axis, math.rad(30), VAR_speed)
- Turn(rarm, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- --frame9
- Turn(larm, x_axis, math.rad(45), VAR_speed)
- Turn(rarm, x_axis, math.rad(-45), VAR_speed)
- Sleep(VAR_sleep)
- --frame10
- Turn(larm, x_axis, math.rad(30), VAR_speed)
- Turn(rarm, x_axis, math.rad(-30), VAR_speed)
- Sleep(VAR_sleep)
- --frame11
- Turn(larm, x_axis, math.rad(15), VAR_speed)
- Turn(rarm, x_axis, math.rad(-15), VAR_speed)
- Sleep(VAR_sleep)
- --frame12
- Turn(larm, x_axis, math.rad(0), VAR_speed)
- Turn(rarm, x_axis, math.rad(0), VAR_speed)
- Sleep(VAR_sleep)
- end
- end
- -- Stop Actions
- local function stop()
- SetSignalMask( SIG_stop )
- --Signal( SIG_idle )
- --Signal( SIG_off )
- --Signal( SIG_on )
- Signal( SIG_swing )
- --Signal( SIG_pickup
- --Signal( SIG_putdown )
- Signal( SIG_walk )
- --Signal( SIG_fists )
- Signal( SIG_stop )
- local VAR_speed = 1
- --Spring.Echo('The unit should have stopped now')
- Move(waist, x_axis, 0, VAR_speed)
- Move(waist, y_axis, 0, VAR_speed)
- Move(waist, z_axis, 0, VAR_speed)
- Move(head, x_axis, 0, VAR_speed)
- Move(head, y_axis, 0, VAR_speed)
- Move(head, z_axis, 0, VAR_speed)
- Move(torso, x_axis, 0, VAR_speed)
- Move(torso, y_axis, 0, VAR_speed)
- Move(torso, z_axis, 0, VAR_speed)
- Move(larm, x_axis, 0, VAR_speed)
- Move(larm, y_axis, 0, VAR_speed)
- Move(larm, z_axis, 0, VAR_speed)
- Move(rarm, x_axis, 0, VAR_speed)
- Move(rarm, y_axis, 0, VAR_speed)
- Move(rarm, z_axis, 0, VAR_speed)
- Move(rleg, x_axis, 0, VAR_speed)
- Move(rleg, y_axis, 0, VAR_speed)
- Move(rleg, z_axis, 0, VAR_speed)
- Move(lleg, x_axis, 0, VAR_speed)
- Move(lleg, y_axis, 0, VAR_speed)
- Move(lleg, z_axis, 0, VAR_speed)
- Turn(lleg, x_axis, math.rad(0), VAR_speed)
- Turn(rleg, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(0), VAR_speed)
- Turn(larm, y_axis, math.rad(0), VAR_speed)
- Turn(rarm, x_axis, math.rad(0), VAR_speed)
- Turn(rarm, y_axis, math.rad(0), VAR_speed)
- Turn(waist, x_axis, math.rad(0), VAR_speed)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(head, x_axis, math.rad(0), VAR_speed)
- Turn(waist, y_axis, math.rad(0), VAR_speed)
- Turn(torso, y_axis, math.rad(0), VAR_speed)
- Turn(head, y_axis, math.rad(0), VAR_speed)
- Sleep(1)
- Signal( SIG_stop )
- end
- ------
- -- Activation Animation (test)
- function turn_on()
- SetSignalMask( SIG_on )
- Spring.Echo('The unit is now activated')
- Spin(head, y_axis, 1, 2)
- end
- -- Deactivation Animation (test)
- function turn_off()
- SetSignalMask( SIG_off )
- Spring.Echo('The unit is now deactivated')
- StopSpin(head, y_axis, 2)
- end
- -- Attack Animation for arms
- local function RestoreAfterDelay(unitID)
- local VAR_speed = 2
- Sleep(1500)
- Turn(torso, x_axis, math.rad(0), VAR_speed)
- Turn(larm, x_axis, math.rad(0), VAR_speed)
- Turn(rarm, x_axis, math.rad(0), VAR_speed)
- Turn(larm, y_axis, math.rad(0), VAR_speed)
- Turn(rarm, y_axis, math.rad(0), VAR_speed)
- end
- local function swing1()
- Turn(larm, y_axis, math.rad(45), 4)
- WaitForTurn(larm, y_axis)
- Turn(larm, y_axis, math.rad(-45), 6)
- WaitForTurn(larm, y_axis)
- Turn(larm, y_axis, math.rad(0), 2)
- end
- local function swing2()
- Turn(torso, y_axis, math.rad(-15), 4)
- Turn(rarm, y_axis, math.rad(-45), 4)
- WaitForTurn(rarm, y_axis)
- Turn(rarm, y_axis, math.rad(45), 6)
- WaitForTurn(rarm, y_axis)
- Turn(rarm, y_axis, math.rad(0), 2)
- end
- ------
- -- Call-Ins
- ------
- function script.Create()
- attacking = false
- currSlot = 1
- dropSlot = 1
- end
- ------
- function script.StartMoving()
- StartThread( walk )
- StartThread( arm_swing )
- end
- function script.StopMoving()
- StartThread( stop )
- end
- ------
- function script.Activate()
- StartThread( turn_on )
- end
- function script.Deactivate()
- StartThread( turn_off )
- end
- ------
- function script.TransportPickup ( passengerID )
- SetUnitValue(COB.BUSY, 1)
- pick_up()
- Spring.UnitScript.AttachUnit(slots[currSlot], passengerID)
- currSlot = currSlot + 1
- if currSlot > 4 then
- currSlot = 1
- end
- SetUnitValue(COB.BUSY, 0)
- end
- function script.TransportDrop ( passengerID, x, y, z )
- SetUnitValue(COB.BUSY, 1)
- put_down()
- dropSlot = 1
- repeat
- UnitScript.DropUnit(passengerID, x, y, z )
- dropSlot = dropSlot + 1
- until dropSlot > 4
- dropSlot = 1
- SetUnitValue(COB.BUSY, 0)
- end
- ------
- function script.QueryWeapon1() return lflare end
- function script.QueryWeapon2() return rflare end
- function script.AimFromWeapon1() return torso end
- function script.AimFromWeapon2() return torso end
- function script.AimWeapon1( heading, pitch )
- Signal( SIG_aim1 )
- SetSignalMask( SIG_aim1 )
- Turn(larm, x_axis, math.rad(-90), 2)
- WaitForTurn(larm, x_axis)
- Turn(torso, y_axis, heading, math.rad(150))
- WaitForTurn(torso, y_axis)
- StartThread( RestoreAfterDelay )
- return true
- end
- function script.AimWeapon2( heading, pitch )
- Signal( SIG_aim2 )
- SetSignalMask( SIG_aim2 )
- Turn(rarm, x_axis, math.rad(-90), 2)
- WaitForTurn(rarm, x_axis)
- Turn(torso, y_axis, -pitch, math.rad(90))
- --WaitForTurn(torso, x_axis)
- StartThread( RestoreAfterDelay )
- return true
- end
- function script.FireWeapon1()
- swing1()
- Sleep(5)
- end
- function script.FireWeapon2()
- swing2()
- Sleep(5)
- end
- ------
- function script.Killed()
- unit_dying()
- return 0
- end
- ------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement