Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @name Crew Command
- @inputs [GunnerPOD CommanderPOD DriverPOD CamController]:wirelink Gun:entity
- @outputs Fire
- @persist Language:string CrewVolume
- @trigger Gunner Commander Driver W A S D Space
- @model models/props_lab/reciever01d.mdl
- if(first() | duped() | dupefinished())
- {
- # You require this addon for sounds #
- # http://steamcommunity.com/sharedfiles/filedetails/?id=906654112 #
- ######################################## SETTINGS #########################################
- Language = "english" # (english, russian) #
- ###########################################################################################
- if(Language == "russian"){CrewVolume = 0.35}else{CrewVolume = 0.8}
- function void playUP()
- {
- local Number = randint(3)
- local SoundString = "acf_modern_tank_sound_pack/crew/" + Language + "/loader-up"
- soundPlay("loaderup",1,SoundString + Number:toString() + ".wav")
- }
- local Players = players()
- holoCreate(1)
- holoModel(1,"models/sprops/misc/alphanum/alphanum_arrow_b.mdl")
- holoAng(1,ang(180,0,0))
- holoScale(1,vec(10,1,20))
- holoMaterial(1,"models/debug/debugwhite")
- holoColor(1,vec4(255,0,0,160))
- holoVisible(1,Players,0)
- holoCreate(2)
- holoModel(2,"models/sprops/misc/alphanum/alphanum_arrow_b.mdl")
- holoAng(2,ang(180,90,0))
- holoScale(2,vec(10,1,20))
- holoMaterial(2,"models/debug/debugwhite")
- holoColor(2,vec4(255,0,0,160))
- holoVisible(2,Players,0)
- holoParent(2,1)
- ###############################################################################################
- }
- ############################################ Seats ############################################
- Gunner = GunnerPOD["Entity",entity]
- Commander = CommanderPOD["Entity",entity]
- Driver = DriverPOD["Entity",entity]
- ############################################# Gun #############################################
- GunReady = Gun:acfReady()
- ######################################## Commander Keys #######################################
- W = CommanderPOD["W",number]
- A = CommanderPOD["A",number]
- S = CommanderPOD["S",number]
- D = CommanderPOD["D",number]
- Space = CommanderPOD["Space",number]
- CM1 = CommanderPOD["Mouse1",number]
- CM2 = CommanderPOD["Mouse2",number]
- CR = CommanderPOD["R",number]
- CF = CommanderPOD["Light",number]
- CT = Commander:driver():keyPressed("T")
- CActive = CommanderPOD["Active",number]
- ### Gunner Keys ###
- M1 = GunnerPOD["Mouse1",number]
- GActive = GunnerPOD["Active",number]
- ### Camera Stuff ###
- HitPos = CamController["HitPos",vector]
- ###############################################################################################
- interval(500)
- if(changed(Commander:driver() & Commander:driver()))
- {
- Commander:printDriver(_HUD_PRINTTALK,"Welcome commander!")
- Commander:printDriver(_HUD_PRINTTALK,"W A S D Space to direct your driver,")
- Commander:printDriver(_HUD_PRINTTALK,"M1 to notify gunner of enemy tank,")
- Commander:printDriver(_HUD_PRINTTALK,"M2 to tell gunner to fire,")
- Commander:printDriver(_HUD_PRINTTALK,"R to tell gunner to reengage,")
- Commander:printDriver(_HUD_PRINTTALK,"T to tell gunner he hit target,")
- Commander:printDriver(_HUD_PRINTTALK,"F to tell gunner to cease fire.")
- }
- ### Commander - Driver Commands ###
- if(CActive)
- {
- # Forward
- if(changed(W) & W)
- {
- Driver:hintDriver("Driver, move out!",4)
- #Commander:hintDriver("Driver, move out",4)
- Driver:soundPlay("moveout",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/driver-move.wav")
- soundVolume("moveout",CrewVolume)
- }
- # Left
- if(changed(A) & A)
- {
- Driver:hintDriver("Driver, move left!",4)
- #Commander:hintDriver("Driver, move left",4)
- Driver:soundPlay("moveleft",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/driver-left.wav")
- soundVolume("moveleft",CrewVolume)
- }
- # Reverse
- if(changed(S) & S)
- {
- Driver:hintDriver("Driver, back up!",4)
- #Commander:hintDriver("Driver, back up",4)
- Driver:soundPlay("moveback",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/driver-back.wav")
- soundVolume("moveback",CrewVolume)
- }
- # Right
- if(changed(D) & D)
- {
- Driver:hintDriver("Driver, move right!",4)
- #Commander:hintDriver("Driver, move right",4)
- Driver:soundPlay("moveright",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/driver-right.wav")
- soundVolume("moveright",CrewVolume)
- }
- # Stop
- if(changed(Space) & Space)
- {
- Driver:hintDriver("Driver, stop!",4)
- #Commander:hintDriver("Driver, stop",4)
- Driver:soundPlay("stop",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/driver-stop.wav")
- soundVolume("stop",CrewVolume)
- }
- ### Commander - Gunner Commands ###
- # Gunner Sabot Tank
- if(changed(CM1) & CM1)
- {
- holoPos(1,HitPos+vec(0,0,192))
- holoVisible(1,Gunner:driver(),1)
- holoVisible(2,Gunner:driver(),1)
- holoVisible(1,Commander:driver(),1)
- holoVisible(2,Commander:driver(),1)
- stoptimer("hide")
- timer("hide",5000)
- Gunner:hintDriver("Gunner, SABOT, TANK",4)
- Gunner:soundPlay("sabottank",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/gunner-sabot-tank.wav")
- soundVolume("sabottank",CrewVolume)
- }
- # Fire!
- if(changed(CM2) & CM2)
- {
- Gunner:hintDriver("FIRE!",4)
- Gunner:soundPlay("fire",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/fire.wav")
- }
- # Reengage!
- if(changed(CR) & CR)
- {
- Gunner:hintDriver("Reengage!",4)
- Gunner:soundPlay("reengage",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/reengage.wav")
- soundVolume("reengage",CrewVolume)
- }
- # Cease Fire!
- if(changed(CF) & CF)
- {
- Gunner:hintDriver("Cease fire!",4)
- Gunner:soundPlay("ceasefire",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/ceasefire.wav")
- soundVolume("ceasefire",CrewVolume)
- }
- # Target!
- if(changed(CT) & CT)
- {
- Gunner:hintDriver("Target!",4)
- Gunner:soundPlay("target",2,"acf_modern_tank_sound_pack/crew/" + Language + "/tc/target.wav")
- soundVolume("target",CrewVolume)
- }
- if(clk("hide"))
- {
- holoVisible(1,Gunner:driver(),0)
- holoVisible(2,Gunner:driver(),0)
- holoVisible(1,Commander:driver(),0)
- holoVisible(2,Commander:driver(),0)
- }
- }
- ### Gunner - Firing ###
- # On the way
- if(changed(M1) & M1 & GunReady)
- {
- timer("ontheway",500)
- Driver:hintDriver("On the way!",4)
- Commander:hintDriver("On the way!",4)
- soundPlay("ontheway",2,"acf_modern_tank_sound_pack/crew/" + Language + "/gn/on-the-way.wav")
- soundVolume("ontheway",CrewVolume*10)
- }
- if(clk("ontheway"))
- {
- Fire = 1
- }
- else
- {
- Fire = 0
- }
- ### Loader - UP ###
- # UP
- if(changed(GunReady) & GunReady)
- {
- playUP()
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement