Game Modding | Call of Duty: Black Ops 3 | Scripting
ModmeBot:
Thread By: Another
Hi,
I want to create a system that works like this :
1. Player hit trigger > object move "A" To "B"
2. Player hit trigger > object move "B" To "C"
3. Player hit trigger > object move "C" To "A"
The player can activate it as much as he wishes, i tried to make the script but I'm confused and I don't know how to do it.
Here's the script I wrote, it's a good start or I totally failed ? I'm trying to learn so excuse me for the mistakes I probably made
tgr = GetEnt("target", "targetname");
tgr waittill( "damage", amount, attacker, direction_vec, point, type, tagName, modelName, partName, weapon, dFlags, inflictor, chargeLevel );
if( weapon == GetWeapon("weapon"))
{
move = 0;
for( i=0; i<move.size; i++="" )="" {="" if(move[i]="=" 1)="" {="" model="GetEnt("target"," "targetname");="" model="" moveto((-316,452,228),="" 10,="" 2.5,="" 2.5="" );="" }="" else="" if(move[i]="=" 2)="" {="" model="GetEnt("target"," "targetname");="" model="" moveto((-316,695,228),="" 10,="" 2.5,="" 2.5="" );="" }="" else="" if(move[i]="=" 3)="" {="" model="GetEnt("target"," "targetname");="" model="" moveto((-316,452,228),="" 10,="" 2.5,="" 2.5="" );="" }="" else="" if(move[i]="=" 4)="" {="" model="GetEnt("target"," "targetname");="" model="" moveto((-316,695,228),="" 10,="" 2.5,="" 2.5="" );="" move="0;" }="" move="" ++;="" }="" }=""></move.size;>
ModmeBot:
Reply By: hahaDuNOOB
if i will do this i do this like this
function main()
{
thread setup();
}
function setup()
{
thread trigger1();
thread trigger2();
thread trigger3();
}
function trigger1()
{
tgr1 = GetEnt("tgr1", "targetname");
model1 = GetEnt("model1", "targetname");
tgr1 waittill("trigger", user);
model1 MoveTo((-316,452,228), 10, 2.5, 2.5 );
//if need to delete
//tgr1 Delete();
//model1 Delete();
}
function trigger2()
{
tgr2 = GetEnt("tgr2", "targetname");
model2 = GetEnt("model2", "targetname");
tgr2 waittill("trigger", user);
model2 MoveTo((-316,452,228), 10, 2.5, 2.5 );
//if need to delete
//tgr1 Delete();
//model1 Delete();
}
function trigger3()
{
tgr3 = GetEnt("tgr3", "targetname");
model3 = GetEnt("model3", "targetname");
tgr3 waittill("trigger", user);
mode3 MoveTo((-316,452,228), 10, 2.5, 2.5 );
//if need to delete
//tgr1 Delete();
//model1 Delete();
}
ModmeBot:
Reply By: DTZxPorter
So to clarify for other users, you're basically creating like in-game arrow keys for an object, press (trigger) move left, press (trigger) move right?
ModmeBot:
Reply By: Another
DTZxPorterSo to clarify for other users, you're basically creating like in-game arrow keys for an object, press (trigger) move left, press (trigger) move right?
Yes, that's it
EDIT: It's good, I finally succeeded. I used a different method but it suits me
Thanks for your help.
Here is the script I use :
function name_your_function()
{
trigger_1 = GetEnt("target", "targetname");
model_1 = GetEnt("target", "targetname");
while(1)
{
trigger_1 waittill("trigger", user);
random = RandomIntRange( 0, 5 );
switch( random )
{
case 0: //Loc. 1
model_1 MoveTo((X, Y, Z), 2, 0.05, 0.05 );
wait (2.5);
break;
case 1: //Loc. 2
model_1 MoveTo((X, Y, Z), 2, 0.05, 0.05 );
wait (2.5);
break;
case 2: //Loc. 3
model_1 MoveTo((X, Y, Z), 2, 0.05, 0.05 );
wait (2.5);
break;
case 3: //Loc. 4
model_1 MoveTo((X, Y, Z), 2, 0.05, 0.05 );
wait (2.5);
break;
case 4: //Loc. 5
model_1 MoveTo((X, Y, Z), 2, 0.05, 0.05 );
wait (2.5);
break;
default: //Default Location
model_1 MoveTo((X, Y, Z), 2, 0.05, 0.05 );
wait (2.5);
break;
//2 time to move the entity in seconds
//0.05 time spent accelerating
//0.05 time spent decelerating
}
}
}