PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Geschosse-Pfeile(im AKS)



Fireblade
31.05.2005, 20:02
Ich habe es schon in einem anderen Ort geschildert, sorry war der falsche Ort,doch jetz mach ich es mal hier rein:

Ich habe schon in vielen spielen gesehen das Kugeln auf den Gegner zufliegen, natürlich nur in die entgegen-gesetzte Richtung von der sie abgefeuert wurden.
Das gleiche möchte ich natürlich auch in meinem spiel, aber nicht mit Kugeln sondern mit Pfeilen.

Ich habe aber keinen Schimmer wie ich das machen soll????

Ich möchte das einer, oder mehrere Feinde, die mit einem Bogen ausgerüstet sind, mit Pfeilen auf mich schiessen, wenn ich in ihrer Schussbahn bin.
Und wen dieser Pfeil den Helden trifft verliert er eine bestimmte Anzahl an HP.
Und das er dann eine Weile nachladen/warten muss bis er wieder schiessen kann.


Im anderen thread wurde mir vorgeschlagen das Ebook zu benutzen, doch ich find nichts und zweitens brauche ich es für mein AKS nicht fürs SKS.
Und ein Skript dazu, habe ich auch bekommen, doch der kapier ich echt nicht. :(

Meine Frage ist also:
-Kann mir jemand bei diesem Problem helfen????
-Entweder mit einem Skript oder mit der Erklärung.
-Oder auch mit dem genauen Ort wo ich so etwas herbekommen könnte.

Ich danke schonmal im voraus.

Fireblade

DR_Zeph
31.05.2005, 22:49
nya, ich helf dir mal mit ner erklärung,

also, die KI, das die Gegner schießen, wenn Held in der Schußbahn ist, sollte sich über ein sichtfeld lösen lassen, einfach Gegner von und Helden Positionen abziehn, und abforken, ob Gegner und Held sich auf gleicher Y, bzw. X position befindet, und es in schussreichweite ist, also z.b.

fork Variable Hero-->Gegner X = 0
fork variable Hero-->Gegner Y = 5, oder kleiner
fork variable Hero-->Gegner Y = -5, oder größer

end
end
end

dem könnte man noch ne abfrage der blickrichtung des gegners zufügen, aber k,
num zum eigentlichen schuss, speicher die Gegnerpositionen, und fork ab, ob der gegner hoch, runter, links oder rechts schaut, wenn hoch ziehst du eins von der Gegner Y Koordinate ab, wenn runter addierst du eins hinzu, bei link addierst du eins zu der X Koordinate, bei rechts, ziehst du wiederum eins von ihr ab, dann benutz den befehl Set Event place, zweite registerseite, linke spalte, und setz ein event, welches den namen kugel trägt, auf die gerade gespeicherten positionen, und schalt den TAB Kugel an dann kommt die kugel bewegung,wobei ich jez nur eine sehr schlechte variante beschreibe, obwohl man es ohne probleme ausweitern könnte, mach je nach dem, mach nun erneut vier forks, die die richtung des gegners abfragen, und lass jenachdem wie die richtung ist, das event fünf felder in die entsprechende richtung bewegen, mach ein hächcken bei ignore, setz ein move all drunter, und mach den TAB Kugel aus, und mach dortdrunter einen wait, der solang anhält, wie die nachladezeit,

geh nun ins event kugel, gib ihm den aussehn eines pfeils, mach ne startvorraussetzung, kugel, und stell es auf PP, in die event commands speicher nun erst, die Kugelpositionen und dann die Helden positionen, mach darunter einer fork, die abfragt, ob X Kugelposition gleich X Heldposition ist, das gleiche auch für die Y positionen, in die forks kommen nun noch einfach die sachen, die passieren soll, wenn der held getroffen wird,

Fireblade
31.05.2005, 23:02
Ich blick jetz nicht ganz durch sorry, könntest du nicht einen ganzen Code posten, bitte???

Ich weiss das ist umständlich, aber so wie hier habe ich nicht der überblick.

Jedenfals mal danke für das was du bis jetz gemacht hast ;)

Fireblade
31.05.2005, 23:30
Ok, doch, es ging, ich habe es kapiert.

sorry wegen doppelpost, aber der ist wichtig, sonst macht jemand was und sieht dann hier drinn das ich es nicht mehr brauche. ;)

Habe allerdings nur noch 2 probleme:
-Die Schadensberechnung.
-Und das aufhalten des Pfeiles.

zum ersten genaueres: Wie muss ich das machen sodass der Held HP verliert wenn er getroffen worden ist vom Pfeil???

zum zweiten genaueres: Wen der Pfeil an eine wand oder einen Baum berührt, dan sollte er, vileicht were noch witzig dort stecken bleiben, aber liebr möchte ich wissen wie ich es machen kann so das er micht mer weiter fliegt.

DR_Zeph
02.06.2005, 22:32
dafür musst du diesen feldern bestimmte terrain id's zuweisen, z.b. terain id 5,
bevor du jez den pfeil bewegen lässt, muss du die terrain id von dem feld, wo er als nächstes hinschießt abfragen, geht über den befehl set terrain id, nimm für die koordianten die pfeil position, speicher in zwei variablen, und lass, je nachdem, wo der pfeil hinfliegt, die koordianten so verändern, das das nächste tile rauskommt, z.b. fliegt nach rechts, koordi x +1, bei links -1,
so unter den set mach einfach ne fork, die abfragt, ob die set varie gleich fünf is, wenn ja, tab schuss ausmachen,
bei pfeil treffer, hp verlieren, mach einfach in die fork wo abgefragt wird, ob hero positionen gleich pfeil positionen sind, den befehl change hero hp auftauchen, und verminder so diese,

Fireblade
04.06.2005, 14:07
Danke.

Jetzt funktioniert es.

Danke für die Hilfe http://www.multimediaxis.de/images/smilies/old/sm_12.gif

Fireblade
04.06.2005, 22:13
So zum nächsten Problem in meinem Schuss AKS, ich hoffe jemand kann mir dabei helfen:

Also alles funtkioniert bis der Gegner etwa 3 Pfeile geschossen hat, die nächsten bleiben immer hängen gleich nach dem abschiessen.
Und manchmal fliegen sie falsch, das heisst: Wenn der gegner nach links schaut, fliegt der Pfeil senkrecht auf den held zu.

Was mach ich nur falsch???
Kann mir jemand das erklären?

Der Code: Gegner-Pfeil(Ork1)
<>Variable Ch: (0182:Hero-S-X)Set, Hero PicsX
<>Variable Ch: (0183:Hero-S-Y)Set, Hero PicsY
<>Variable Ch: (0182:Hero-S-X)- ,Bogenschütze1 PicsX
<>Variable Ch: (0183:Hero-S-Y)- ,Bogenschütze1 PicsY
<>FORK Optn: Varbl(0182:Hero-S-X)-64less
<>FORK Optn: Varbl(0182:Hero-S-X)--64abov
<>FORK Optn: Varbl(0183:Hero-S-Y)-64less
<>FORK Optn: Varbl(0183:Hero-S-Y)--64above
<>Variable Ch: (0184: Gegnerpfeil1) Set, Randm(1*5)
<>Wait: 0.2s
<>FORK Optn: Varbl(0184: Gegnerpfeil1)-2
<>Move Event...: Bogenschütze1,Normal Face Hero,Wait ,Wait
<>Wait: 0.5s
<>FORK Optn: Bogenschütze1-Up Face Direct
<>Move Event...: Gegnerpfeil1,Face Up
<>Variable Ch: (0185:Ork-X) Set,Bogenschütze1 X pos
<>Variable Ch: (0186:Ork-Y) Set,Bogenschütze1 Y pos
<>Setup Event's Place: Gegnerpfeil1, (V(0185),V(0186))
<>Play SE: Bow1
<>Change Switch: (0263: Gegnerpfeil1)-ON Set
<>Wait: 2.0s
<>
:ELSE Case
<>FORK Optn: Bogenschütze1-Rt Face Direct
<>Move Event...: Gegnerpfeil1, Face right
<>Variable Ch: (0185:Ork-X) Set, Bogenschütze1 X pos
<>Variable Ch: (0186:Ork-Y) Set, Bogenschütze1 Y pos
<>Setup Event's Place: Gegnerpfeil1, (V(0185),V(0186))
<>Play SE: Bow1
<>Change Switch: (0263: Gegnerpfeil1)-ON Set
<>Wait: 2.0s
<>
:ELSE Case
<>FORK Optn: Bogenschütze1-Dw Face Direct
<>Move Event...: Gegnerpfeil1, FaceDown
<>Variable Ch: (0185:Ork-X) Set, Bogenschütze1 X pos
<>Variable Ch: (0186:Ork-Y) Set, Bogenschütze1 Y pos
<>Setup Event's Place: Gegnerpfeil1, (V(0185),V(0186))
<>Play SE: Bow1
<>Change Switch: (0263: Gegnerpfeil1)-ON Set
<>Wait: 2.0s
<>
:ELSE Case
<>FORK Optn: Bogenschütze1-Lf Face Direct
<>Move Event...: Gegnerpfeil1, Face left
<>Variable Ch: (0185:Ork-X) Set, Bogenschütze1 X pos
<>Variable Ch: (0186:Ork-Y) Set, Bogenschütze1 Y pos
<>Setup Event's Place: Gegnerpfeil1, (V(0185),V(0186))
<>Play SE: Bow1
<>Change Switch: (0263: Gegnerpfeil1)-ON Set
<>Wait: 2.0s
<>
dan kommen eher die unwichtigen END Case stellen dran

Zum zweiten Code: Gegner-Coord.(Ork1)
<>Variable Ch: (0187: Ork-P-X) Set, Gegnerpfeil1 X pos
<>Variable Ch: (0188: Ork-P-Y) Set, Gegnerpfeil1 Y pos
<>Variable Ch: (0189: Hero-X) Set, Hero X pos
<>Variable Ch: (0190: Hero-Y) Set, Hero Y pos
<>FORK Optn: Varbl: (0187: Ork-P-X)-V(0189)Equivl
<>FORK Optn: Varbl: (0188: Ork-P-Y)-V(0190)Equivl
<>FORK Optn: Switch (0263: Gegnerpfeil1) - ON
<>Flash Character...: Hero , 0.5s
<>Variable Ch: (0191: Schaden.durch.Pfeil) Set, Randm(5*20)
<>Change HP: All Members HP V(0191) Decr.
<>Change Switch : (0263: Gegnerpfeil1)-OFF Set
<>
:END Case
<>
:END Case
<>
:END Case
<>


So das sind alle Codes die ich benutze um die Pfeile von einem Bogenschützen abzufeuern und die Hp zu berechnen und so.
Ich hoffe jemand kann mir weiter helfen, und das bitte noch recht schnell sonst verlier ich noch die hoffnung........ :(

Danke schonmal im voraus...


Fireblade