1 registered members (AndrewAMD),
1,248
guests, and 6
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Problem mit dem wechseln vom hangeln zum klettern
#379371
08/01/11 18:00
08/01/11 18:00
|
Joined: Jan 2011
Posts: 797 Da wo du nicht bist! Muhahaha!
xxxxxxx
OP
User
|
OP
User
Joined: Jan 2011
Posts: 797
Da wo du nicht bist! Muhahaha!
|
Hi, ich bastel momentan an einem code für's klettern rum. jetzt möchte ich dass der spieler automatisch beim hangeln erkennt wenn über ihm nicht mehr ist und er (wie auf dem Bild) hochklettern muss. der spieler hangelt und klettet einwandfrei(abgesehen von den fehlenden animationen^^). jetzt zum problem: nach dem übergang klettert der spieler nur einen frame danach schießt er in die höhe(da die schwerkraft variable positiv wird, ist aber nicht schlimm/wichtig) und fällt dann wieder ganz normal. Was ich daran nicht verstehe: Jede variable, die ich irgendwie beim übergang veändere wird beim klettern neugesetzt/nicht gebracht. Hier der code:
if(MoveState == 1)//klettern
{
vec_set(temp9, vector(0 , -120, my.max_z));
vec_rotate(temp9,vector(my.pan,my.tilt,my.roll));
vec_add(temp9,my.x);
vec_set(temp10, vector(0 , -120, my.min_z));
vec_rotate(temp10,vector(my.pan,my.tilt,my.roll));
vec_add(temp10,my.x);// wird wie temp12 exakt so wie unten(if(MoveState == 3)) gesetzt
vec_set(temp11, vector(0 , 0, my.max_z));
vec_rotate(temp11,vector(my.pan,my.tilt,my.roll));
vec_add(temp11,my.x);
vec_set(temp12, vector(0 , 0, my.min_z));
vec_rotate(temp12,vector(my.pan,my.tilt,my.roll));
vec_add(temp12,my.x);
draw_point3d(temp9,vector(0,0,0),50,25);
draw_point3d(temp11,vector(0,0,0),50,25);
draw_point3d(temp10,vector(0,0,0),50,25);
draw_point3d(temp12,vector(0,0,0),50,25);
DividateFactor = 0;//ich weiß mathematiker würden mich für den namen köpfen^^
fall_down = 0;
vec_set(Normale2,nullvector);//wird neu gesetzt
fall_down += c_trace(temp11,temp9,IGNORE_PASSABLE|IGNORE_ME);
if(HIT_TARGET)
{
DividateFactor += 1;
vec_add(Normale2,hit.nx);
}
fall_down += c_trace(temp12, temp10,IGNORE_PASSABLE|IGNORE_ME);
if(HIT_TARGET)
{
DividateFactor += 1;
vec_add(Normale2,hit.nx);
}
DividateFactor_Show = DividateFactor;
if(DividateFactor)
{
fall_down /= DividateFactor;
vec_mul(Normale2,vector(1/DividateFactor,1/DividateFactor,1/DividateFactor));
vec_to_angle(temp4,Normale2);//temp4 auch neu gestetz
vec_set(temp5,temp4);
temp5.x -= 90;//ausrichtung genau so wie unten
temp5.z = temp5.y;
temp5.y = 0;
MoveStateC = 1;
if(Normale2.z > 0.5)
{
MoveStateC = 0;
}
if(Normale2.z < -0.5)
{
MoveStateC = 2;
}
}
else
{
MoveStateC = 0;
}
...
}
if(MoveState == 2)//Hangeln
{...
if(HIT_TARGET)
{
vec_set(Normale2, hit.nx);
stop = 1;//sorgt dafür das der rest der vom hangeln nicht mehr ausgeführt wird
hight = hit.z;
vec_to_angle(temp4,Normale2);
vec_set(temp5,temp4);
temp5.x -= 90;//temp5 wird so gebraucht -> ausrichtung des spielers
temp5.z = temp5.y;
temp5.y = 0;
vec_set(temp15,temp5);
MoveStateC = 3;
}
else
{
MoveStateC = 0;
}
...
...}
if(MoveState == 3)
{
pXent_move(me,nullvector,vector(0,0,10*time_step));
vec_set(temp5,temp15);
vec_set(temp10, vector(0 , -120, my.min_z));
vec_rotate(temp10,vector(my.pan,my.tilt,my.roll));
vec_add(temp10,my.x);
vec_set(temp12, vector(0 , 0, my.min_z));
vec_rotate(temp12,vector(my.pan,my.tilt,my.roll));
vec_add(temp12,my.x);
c_trace(temp12,temp10,IGNORE_ME|IGNORE_PASSABLE);
if(HIT_TARGET)
{
vec_set(Normale2,hit.nx);
}
if(my.z-abs(my.min_z) > hight+10&&HIT_TARGET)
{
pXent_move(me, nullvector, vector(0,0,my.z-hight+abs(my.min_z)));
MoveStateC = 1;
pXent_move(me, vector(0,3*time_step,0),nullvector);
}
}
MoveState wird immer am ende der schleife(in der sich das ganze übringens befindet) gleich MoveStateC gesetzt, die ganzen temp's sind hilfsvectoren und so bring ich meinen Charakter sonst zum klettern.
vec_to_angle(temp4,Normale2);
vec_set(temp5,temp4);
temp5.x -= 90;
temp5.z = temp5.y;
temp5.y = 0;
MoveStateC = 1;
ich hab echt keine ahnung mehr Danke für alle hilfen schon mal im voraus! xxxxxxx
Es ist immer wieder erstaunlich, dass Leute die riesen Scripte schreiben die einfachsten sachen nicht können zb. mich mit SIEBEN x zu schreiben!
|
|
|
Re: Problem mit dem wechseln vom hangeln zum klettern
[Re: xxxxxxx]
#379387
08/01/11 19:29
08/01/11 19:29
|
Joined: Mar 2011
Posts: 69 Munich (Germany)
LPF
Junior Member
|
Junior Member
Joined: Mar 2011
Posts: 69
Munich (Germany)
|
ist das ein seidescroller oder 3d?
..oooO ......... ..(....)..Oooo.. ...\..(...(....).. ....\_)....)../.. ...........(_/... ...ICH WAR.... ........HIER....
|
|
|
Re: Problem mit dem wechseln vom hangeln zum klettern
[Re: xxxxxxx]
#379389
08/01/11 19:49
08/01/11 19:49
|
Joined: Mar 2011
Posts: 69 Munich (Germany)
LPF
Junior Member
|
Junior Member
Joined: Mar 2011
Posts: 69
Munich (Germany)
|
o.k. thanks soll der player runterfallen können? und wenn ja wie (auf tastendruck oder wenn die kraft ausgeht usw)
Last edited by LPF; 08/01/11 19:52.
..oooO ......... ..(....)..Oooo.. ...\..(...(....).. ....\_)....)../.. ...........(_/... ...ICH WAR.... ........HIER....
|
|
|
Re: Problem mit dem wechseln vom hangeln zum klettern
[Re: xxxxxxx]
#379397
08/01/11 21:41
08/01/11 21:41
|
Joined: Mar 2011
Posts: 69 Munich (Germany)
LPF
Junior Member
|
Junior Member
Joined: Mar 2011
Posts: 69
Munich (Germany)
|
ic hab hier den link http://www.mediafire.com/?dx790n5dhtle0ao auf mediafire(modell, level und script) aber ich glaub nicht dass das das ist was du dir vorgestellt hast... (versuchen kann man's ja mal) du musst bis jetzt erst auf >0< nach dem level suchen(kurz a+pfeil runter)
Last edited by LPF; 08/01/11 21:43.
..oooO ......... ..(....)..Oooo.. ...\..(...(....).. ....\_)....)../.. ...........(_/... ...ICH WAR.... ........HIER....
|
|
|
Re: Problem mit dem wechseln vom hangeln zum klettern
[Re: xxxxxxx]
#379409
08/01/11 23:40
08/01/11 23:40
|
Joined: Nov 2008
Posts: 216
jane
Member
|
Member
Joined: Nov 2008
Posts: 216
|
dann setz doch den tracepunkt der die wand überprüft, wärend des hangelns, über die figur, wenn dann eine wand erkannt wird dann muss das klettern einsetzen, um dann oben auch über die Kante zu kommen, lässt du, wenn keine wand in unmittelbarer nähe mehr gefunden wird weiter in der nötigen playerhöhe tracen um die Oberkante überwinden zu können. Viell. könntest du mal(fals ich da immer noch falsch liege) ein kurzes fraps-video des Problems machen.
Edit: Für den übergang von hangeln zu klettern wird doch sicher eh eine extra animation gemacht, also kurz nur mit den Händen klettern?
Last edited by jane; 08/01/11 23:43.
|
|
|
Re: Problem mit dem wechseln vom hangeln zum klettern
[Re: jane]
#379420
08/02/11 09:46
08/02/11 09:46
|
Joined: Jan 2011
Posts: 797 Da wo du nicht bist! Muhahaha!
xxxxxxx
OP
User
|
OP
User
Joined: Jan 2011
Posts: 797
Da wo du nicht bist! Muhahaha!
|
Hangeln und klettern funktioniert einwandfrei, der übergang sieht bis zu dem sprung auch gut aus, mir geht es nur darum das der sprung nicht sein soll sondern das das klettern wie vorher eintritt. 0:12 seht ihr den fehler.(steht alles in der video beschreibung und einem kommentar von mir) lasst euch nicht von den zahlen, dem sch--ß fraps, das ich benutze und den fehlenden animationen verwirren http://www.youtube.com/watch?v=vBie39c5v8sich hoffe ihr findet was an meinem script oben falsch ist. xxxxxxx
Es ist immer wieder erstaunlich, dass Leute die riesen Scripte schreiben die einfachsten sachen nicht können zb. mich mit SIEBEN x zu schreiben!
|
|
|
|