I strongly suggest you to take a look at my approach for this http://www.chronocrash.com/forum/index.php?topic=4621.0I now have to make new animations for every single character in the game, jeeeez this is gonna take forever.
danno said:I'd love to use your duo attack please share
but please do a total unbind hahahaha
anim attack1
@script
void self = getlocalvar("self");
int iMax = openborvariant("count_entities");
int i;
for(i=0; i<iMax; i++){
void ally = getentity(i);
char AName = getentityproperty(ally, "name");
void AAni = getentityproperty(ally, "animationID");
if(AName=="Ramon" && AAni==openborconstant("ANI_JUMPATTACK")){
int Disx = getRange(self, ally, "x", 0);
int Disz = getRange(self, ally, "z", 0);
int Ay = getentityproperty(ally, "y");
if(Disx <= 80 && Disz <= 10 && Ay > 50 && Ay < 200){
performattack(ally, openborconstant("ANI_FOLLOW2"));
performattack(self, openborconstant("ANI_ATTACK3"));
break;
}
}
}
@end_script
delay 4
offset 68 101
bbox 38 6 60 82
frame data/chars/guy/a1-01.gif
attack 91 13 52 23 10 0
delay 7
frame data/chars/guy/a1-02.gif
attack 0 0 0 0 0 0
delay 7
frame data/chars/guy/a1-01.gif
void getRange(void Ent1, void Ent2, int T, int Flag)
{// Acquires distance between two entities
float x1 = getentityproperty(Ent1, "x");
float z1 = getentityproperty(Ent1, "z");
float x2 = getentityproperty(Ent2, "x");
float z2 = getentityproperty(Ent2, "z");
float Disx = x2 - x1;
float Disz = z2 - z1;
if(Flag != 1){
if(Disx < 0){
Disx = -Disx;
}
}
if(Disz < 0){
Disz = -Disz;
}
if(T == "x"){
return Disx;
}
if(T == "z"){
return Disz;
}
}
if(Disx <= 80 && Disz <= 10 && Ay > 50 && Ay < 200){
I had similar problem and solved it by using @depostdanno said:another reason why I want to rework the throw system, if dracula does escape hit during exact time of a throw, drives me crazy hahaha
Thanks Die_In_Fire I really appreciate that and your help, I did try depost but it's more for grabbed ''state'' since the old throw forced enemy into ''anim grabbed'' if depost is used the whole process of the throw is broken off and both player and enemy just stood there looking at each other like f****** lemonsDie_In_Fire said:This is looking pretty good!!
I had similar problem and solved it by using @depost
void self = getlocalvar("self");
int iMax = openborvariant("count_entities");
int Dir = getentityproperty(self, "direction");
int i;
for(i=0; i<iMax; i++){
void ally = getentity(i);
char AName = getentityproperty(ally, "name");
void AAni = getentityproperty(ally, "animationID");
int ADir = getentityproperty(ally, "direction");
if(AName=="Chris" && ADir==0 && AAni==openborconstant("ANI_FORWARDJUMP")){
int Disx = getRange(self, ally, "x", 0);
int Disz = getRange(self, ally, "z", 0);
int Ay = getentityproperty(ally, "y");
if(Dir==1 && Disx <= 70 && Disz <= 10 && Ay > 20 && Ay < 70){
performattack(ally, openborconstant("ANI_FREESPECIAL12"));
changeentityproperty(self, "direction", 1);
performattack(self, openborconstant("ANI_FOLLOW6"));
} else {
if(Dir==0 && Disx <= 70 && Disz <= 10 && Ay > 20 && Ay < 70){
performattack(ally, openborconstant("ANI_FREESPECIAL12"));
changeentityproperty(self, "direction", 1);
performattack(self, openborconstant("ANI_FOLLOW6"));
break;
}
}
}
if(AName=="Chris" && ADir==1 && AAni==openborconstant("ANI_FORWARDJUMP")){
int Disx = getRange(self, ally, "x", 0);
int Disz = getRange(self, ally, "z", 0);
int Ay = getentityproperty(ally, "y");
if(Dir==0 && Disx <= 70 && Disz <= 10 && Ay > 20 && Ay < 70){
changeentityproperty(self, "direction", 0);
performattack(ally, openborconstant("ANI_freespecial12"));
performattack(self, openborconstant("ANI_FOLLOW6"));
} else {
if(Dir==1 && Disx <= 70 && Disz <= 10 && Ay > 20 && Ay < 70){
performattack(ally, openborconstant("ANI_freespecial12"));
changeentityproperty(self, "direction", 0);
performattack(self, openborconstant("ANI_FOLLOW6"));
break;
}
}
}
}
danno said:Things I'll be changing:
throw system, the moves will be the same I'm just going to code them differently so they look smoother
kimono said:Life is difficult when you are the sparring partner of Jack,
danno said:
Damon Caskey said:We're all a bunch of spoiled kids now.![]()
Yes, it is, but will worth the trouble on the endWorking on all the new enemy animations is laborious
anim idle
loop 0
delay 4
offset 50 50
frame data/chars/misc/cdust/1.gif
frame data/chars/misc/cdust/2.gif
delay 2
frame data/sprites/0empty.gif
frame data/chars/misc/cdust/3.gif
delay 2
frame data/sprites/0empty.gif
delay 4
frame data/chars/misc/cdust/4.gif
delay 2
frame data/sprites/0empty.gif
delay 3
frame data/chars/misc/cdust/5.gif
delay 2
@cmd killentity getlocalvar("self")
frame data/sprites/0empty.gif
anim follow4
loop 0
delay 4
offset 50 50
drawmethod rotate 45
drawmethod fliprotate 1
frame data/chars/misc/cdust/1.gif
frame data/chars/misc/cdust/2.gif
delay 2
frame data/sprites/0empty.gif
frame data/chars/misc/cdust/3.gif
delay 2
frame data/sprites/0empty.gif
delay 4
frame data/chars/misc/cdust/4.gif
delay 2
frame data/sprites/0empty.gif
delay 3
frame data/chars/misc/cdust/5.gif
delay 2
@cmd killentity getlocalvar("self")
frame data/sprites/0empty.gif