Game Modding | Call of Duty: Black Ops 3 | Scripting
ModmeBot:
Thread By: Dedrix Hey forum, I'm really struggling to find any of the below items that are to a reasonable standard, and I know that they may be a bit to ask for however It'd be Fantastic! if you guys could help me out.
- script to open (not delete) a door by shooting it with a specific gun - script to open (not delete) a door with a key (item) - door you can open & close like the doors in Blackout (for shutters) - a PHD that actually works - Blundergat (Acidgat...maybe?) - the proper dragon shield projectile fx
Thanks so much for anyone who's able to help me out!
ModmeBot:
Reply By: KillJoyYT the first three can be found on the forums here or a youtube search. uptownpapi has a nice keycard door tut on youtube
ModmeBot:
Reply By: Dedrix
KillJoyYT the first three can be found on the forums here or a youtube search. uptownpapi has a nice keycard door tut on youtube
The problem I have with that script is that it deletes the door rather than having it move (rotate/vector). I'm looking for one that allows that. Perhaps It could be edited to do that, however I'm not sure how to...? Also the key does not disappear when I pick it up lol
function init_keycard() { level.key_obtained = false; key = GetEnt( "key_trigger", "targetname" ); key SetCursorHint( "HINT_NOICON" ); key SetHintString( "Press and Hold ^3&&1^7 to Pick Up Keycard" ); key thread wait_for_pickup();
key_doors = GetEntArray( "key_door", "targetname" ); foreach( door in key_doors ) { door SetCursorHint( "HINT_NOICON" ); door SetHintString( "A Key is Required to Open the Door" ); door thread wait_for_unlock(); } }
function wait_for_pickup() { self waittill( "trigger", player ); model = GetEnt( self.target, "targetname" ); model delete(); self delete(); level.key_obtained = true; iprintlnbold( "The Keycard Has Been Obtained" ); }
function wait_for_unlock() { level endon( "intermission" );
while( !level.key_obtained ) wait(0.25);
self SetHintString( "Press and Hold ^3&&1^7 to Unlock Door" ); self waittill( "trigger", player ); models = GetEntArray( self.target, "targetname" ); PlaySoundAtPosition( "zmb_cha_ching", player.origin ); spawn_flag = models[0].script_flag; flag::set( spawn_flag ); wait(0.05); foreach( model in models ) model delete(); self delete(); }
ModmeBot:
Reply By: xdferpc here is the solution modified your code to erase the key card and rotate the door
ModmeBot:
Reply By: KillJoyYT in the last function...…….. function wait_for_unlock()
change
to
ModmeBot:
Reply By: Dedrix This is really good stuff guys, however what if I have two models to move...?
ModmeBot:
Reply By: mathfag
Dedrix This is really good stuff guys, however what if I have two models to move...?
it will move both of them thats what foreach(x in y) does
ModmeBot:
Reply By: Dedrix
mathfag Dedrix This is really good stuff guys, however what if I have two models to move...? it will move both of them thats what foreach(x in y) does
Sorry I meant move them differently, meaning I have a double opening door, so the left one rotates (-90) and right rotates (90).
ModmeBot:
Reply By: mathfag
Dedrix mathfag Dedrix This is really good stuff guys, however what if I have two models to move...? it will move both of them thats what foreach(x in y) does Sorry I meant move them differently, meaning I have a double opening door, so the left one rotates (-90) and right rotates (90).
Give them the KVP script_angles and enter the angle you want it to turn to NOT by how much (like when you make a buyable door).