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
ModmeBot:
Reply By: xdferpc
here is the solution
modified your code to erase the key card and rotate the door
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 waittill( "trigger", player );
key delete();
model = GetEnt( self.target, "targetname" );
model delete();
level.key_obtained = true;
iprintlnbold( "The Keycard Has Been Obtained" );
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_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 RotateYaw(90,1);
self RotateYaw(90,1);
}
ModmeBot:
Reply By: KillJoyYT
in the last function...…….. function wait_for_unlock()
change
foreach( model in models )
model delete();
to
foreach( model in models )
model MoveX(120,2); //moving the model on the x axis 120 units in 2 sec
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...?
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
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).
foreach( model in models )
{
time = 1;
if(isDefined(model.script_angles))
{
rot_angle = model.script_angles;
model RotateTo( rot_angle, time, 0, 0 );
}
else
{
model MoveX(120,time); //moving the model on the x axis 120 units in 2 sec
}
}