#define vor skill1
#define hinter skill2
#define mitte skill3
ENTITY* runner;
ENTITY* vorne = NULL;
ENTITY* hinten = NULL;
function block_guard()
{
set(my,LIGHT);
my.vor = 0;
my.hinter = 0;
while(me)
{
c_trace(my.x,vector(my.x,my.y,my.z+100), IGNORE_ME);
if(you){
if(you == runner){
my.green =255;my.blue=255;my.red=255;
if(my.mitte == 1){
ent_remove(hinten);
return;
}
}
}
c_trace(my.x,vector(my.x+8,my.y,my.z),IGNORE_ME);
if(you){my.vor = 1;
}
c_trace(my.x,vector(my.x-8,my.y,my.z),IGNORE_ME);
if(you){my.hinter=1;
}
if(my.vor == 1 && my.hinter == 1){my.green = 255; my.red = 0; my.blue = 0;
}
if(my.vor == 0 && my.hinter == 1){my.blue = 255; my.red = 0; my.green = 0; vorne = me;
}
if(my.vor == 1 && my.hinter == 0){my.red = 255; my.green = 0; my.blue = 0; hinten = me;
}
if(my.hinter==1&&my.vor==1){
c_trace(my.x,vector(my.x-8,my.y,my.z),IGNORE_ME);
if(you.hinter == 1){
c_trace(my.x,vector(my.x+8,my.y,my.z),IGNORE_ME);
if(you.vor == 1){
reset(my,LIGHT);
my.mitte = 1;
}
}
}
wait(1);
}
}