PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hirnschmelzaufgabe [AKS]



COP_2608
21.03.2010, 01:20
Guten Tag.

Ich brauche Hilfe mit meinem AKS.

Wenn ich mit dem Schwert die Gegner schlage, prüft der Maker die Variablen des Schwertes und die des Gegners im Event des Gegners. Stimmen sie überein, wird der Treffer gelandet. Das habe ich gemacht um mir die Variablen für die Cords der Gegner zu sparen, da diese sonst zu viel werden würden.
Bedeutet, dass jedes Monster über ein und dieselben X und Y Variablen verfügt.

Das Monster prüft die Cords dadurch also logischerweise als parraleles Event.
Nun das Problem:

Dadurch, dass es sich bei einem Monster dann um ein parraleles Event handelt, kann ich den Gegnertreffer ( Gegner -> Held) nicht programmieren, da dieses dann üblicherweise über eine Kollision mit dem Helden stattfinden würde.

Wer kann weiterhelfen?

R.D.
21.03.2010, 01:30
warum machst du ein gegner als PP?

das ist ein riesiges NO GO, glaub mir xD

Der Maker macht nämlich sobald du ein PP Event berührtst eine lustige Aktion. Er lässt den Inhalt des Events 2x so schnell ablaufen :A das gilt abern ur für PP-Events die auf same level as Hero stehen.

Warum machst du nicht die Abfrage Held -> Monster als PP?
Das heißt für dich zb wenn du nach rechst guckst und angreifst, dann machst du Hero X +1 und dann Get Event ID. Wenn die 0 ist, ist da kein Event wenn doch, da machst du du einen Event Call mit der ID du bekommen hast und einer Eventseitenangebe über eine Vari (dazu hat jeder Gegner besser mehrere Eventseiten, und die 1 ist halt die, die Angriff macht.

Felski
21.03.2010, 13:40
läuft das in deinem spiel nich eh so ab:
man drückt enter. schwertanimation kommt. abfrage ob schwert event = gegner event?

wenn jetzt sein schwert nicht 10 events vor dem helden ist oder dreimal im viereck hüpft sollltest du doch einfach aus dem pp ein same level as hero, push key machen können oder?

COP_2608
21.03.2010, 15:03
Nein, ich will den Gegner ja nicht anklicken müssen. Außerdem greift man in meinem AKS mit der Shift-Taste an. Push Key würde da dann sowieso nicht funktionieren.

Naja, wie dem auch sei... Ich habe mich im Endeffekt doch dazu entschossen die "Held -> Event Trefferabfrage" in einem großen, außerhalb angelegten PP anzulegen. Muss ich wohl in den sauren Apfel beissen. Ist zwar mehr Arbeit, macht es mir aber im Endeffekt doch leichter.

Nichtsdestotrotz, danke ich euch beiden. ;)

Engel der Furcht
22.03.2010, 09:57
Hallöle
Ich hab mir mal ne ganz simple Trefferabfrage.
Sie ist SEHR Simpel.Ich habe einfach jedes Feld um den Helden einzeln geprüft und abgefragt,ob ein oder mehr Gegner "im Radius" sind.
An sich ist das ne Sache von 10 Sekunden(da man den gleichen Code nur mehrmals kopieren und minimal ändern muss),das Resultat ist aber in Ordnung.
Die Trefferabfrage setzt vorraus,dass Gegner 1,2 und 3 immer EventID 1,2 und 3 haben,man sollte also eine Dummymap anbringen,auf der die Trefferabfrage und die Gegner stimmen.

- SCRIPT -
<> Change Variable: [35] = X position on map (tiles) of hero
<> Change Variable: [36] = Y position on map (tiles) of hero
<> Fork Condition: If Hero is facing up then ...
. <> Change Variable: [36] -= 1
. <> Get Event ID: (V[35], V[36]), Store in var. [37]
. <> Fork Condition: If Variable [37] == 1 then ...
. . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . <> Change Switch: [21] = ON
. . <>
. : Else ...
. . <> Fork Condition: If Variable [37] == 2 then ...
. . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . <> Change Switch: [22] = ON
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [23] = ON
. . . . <>
. . . : Else ...
. . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Change Variable: [35] -= 1
. <> Get Event ID: (V[35], V[36]), Store in var. [37]
. <> Fork Condition: If Variable [37] == 1 then ...
. . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . <> Change Switch: [21] = ON
. . <>
. : Else ...
. . <> Fork Condition: If Variable [37] == 2 then ...
. . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . <> Change Switch: [22] = ON
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [23] = ON
. . . . <>
. . . : Else ...
. . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Change Variable: [35] += 2
. <> Get Event ID: (V[35], V[36]), Store in var. [37]
. <> Fork Condition: If Variable [37] == 1 then ...
. . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . <> Change Switch: [21] = ON
. . <>
. : Else ...
. . <> Fork Condition: If Variable [37] == 2 then ...
. . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . <> Change Switch: [22] = ON
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [23] = ON
. . . . <>
. . . : Else ...
. . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: Else ...
. <> Fork Condition: If Hero is facing right then ...
. . <> Change Variable: [35] += 1
. . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . <> Fork Condition: If Variable [37] == 1 then ...
. . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . <> Change Switch: [21] = ON
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [22] = ON
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [23] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <> Change Variable: [36] -= 1
. . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . <> Fork Condition: If Variable [37] == 1 then ...
. . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . <> Change Switch: [21] = ON
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [22] = ON
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [23] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <> Change Variable: [36] += 2
. . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . <> Fork Condition: If Variable [37] == 1 then ...
. . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . <> Change Switch: [21] = ON
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [22] = ON
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [23] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : Else ...
. . <> Fork Condition: If Hero is facing down then ...
. . . <> Change Variable: [36] += 1
. . . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . . <> Fork Condition: If Variable [37] == 1 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [21] = ON
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [22] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . . <> Change Switch: [23] = ON
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <> Change Variable: [35] -= 1
. . . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . . <> Fork Condition: If Variable [37] == 1 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [21] = ON
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [22] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . . <> Change Switch: [23] = ON
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <> Change Variable: [35] += 2
. . . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . . <> Fork Condition: If Variable [37] == 1 then ...
. . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . . <> Change Switch: [21] = ON
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [22] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . . <> Change Switch: [23] = ON
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : Else ...
. . . <> Fork Condition: If Hero is facing left then ...
. . . . <> Change Variable: [35] -= 1
. . . . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . . . <> Fork Condition: If Variable [37] == 1 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [21] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . . . <> Change Switch: [22] = ON
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . . . <> Change Switch: [23] = ON
. . . . . . . <>
. . . . . . : Else ...
. . . . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . . . <>
. . . . . . : End of fork
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <> Change Variable: [36] -= 1
. . . . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . . . <> Fork Condition: If Variable [37] == 1 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [21] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . . . <> Change Switch: [22] = ON
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . . . <> Change Switch: [23] = ON
. . . . . . . <>
. . . . . . : Else ...
. . . . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . . . <>
. . . . . . : End of fork
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <> Change Variable: [36] += 2
. . . . <> Get Event ID: (V[35], V[36]), Store in var. [37]
. . . . <> Fork Condition: If Variable [37] == 1 then ...
. . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . <> Flash Event: Event #1, (R31, G14, B0, S31), 1.0 sec.
. . . . . <> Change Switch: [21] = ON
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [37] == 2 then ...
. . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . <> Flash Event: Event #2, (R31, G14, B0, S31), 1.0 sec.
. . . . . . <> Change Switch: [22] = ON
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Fork Condition: If Variable [37] == 3 then ...
. . . . . . . <> Play Sound Effect: strike10, Volume 100%, Speed 100%, Pan Center
. . . . . . . <> Flash Event: Event #3, (R31, G14, B0, S31), 1.0 sec.
. . . . . . . <> Change Switch: [23] = ON
. . . . . . . <>
. . . . . . : Else ...
. . . . . . . <> Play Sound Effect: schwung1, Volume 100%, Speed 80%, Pan Center
. . . . . . . <>
. . . . . . : End of fork
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : Else ...
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Change Switch: [3] = OFF

R.D.
22.03.2010, 12:53
Sry, EdF aber ich finde das mehr als unpraktisch.
Bei dir müssen die ersten 3 Events immer Gegner sein. Ich habe eben einen Code geschrieben, der einfach die Event_ID bekommt und dann die erste Seite callt, wenn die erste Seite dieses Events dann einen bestimmten Wert zurück gibt, ist es ein Gegner wenn nicht ein anders objekt oder unwichtig.

Dein Code ist sehr lang und gilt wie gesagt für gerade mal 3 Gegner... Stell dir das mal mit 10 vor.

Engel der Furcht
22.03.2010, 14:12
ich weiss:D
ich hab ja auch nicht umsonst geschrieben,dass es sehr simpel ist.
Erfüllt aber dennoch seinen Zweck.
Da mehr als 3 Gegner auf einer Map völlig unnötig für ein richtigs RPG sind.

Felski
23.03.2010, 00:06
Ich habe eben einen Code geschrieben, der...

Und wo isser?

Btw. Wenn die Gegner Event Zahl Fix ist kann man auch einfach folgendes abfragen:

Fork Event ID < 10
-> Böse Animationen die das Event voll zerdeppern.

R.D.
23.03.2010, 00:29
Und wo isser?


Warst du heute überhaupt da :D da hast du mich vllt gesehen wie ich den Maker offen hatte^^
Der Code liegt deswegen auch auf meinen Arbeitslaptop :p
Piek mich morgen, dann zeig ich ihn dir und poste ihn hier :A

Engel der Furcht
23.03.2010, 07:50
Btw. Wenn die Gegner Event Zahl Fix ist kann man auch einfach folgendes abfragen:

Fork Event ID < 10
-> Böse Animationen die das Event voll zerdeppern.

Ne,da bei mir es für jeden Gegner eine KI gibt und wenn man einen Gegner trifft,wird ein Switch aktiviert "Gegner X getroffen"
wenn du einfach diese Fork "If Event ID <10",wüsste der Maker nicht,welche Gegner genau du triffst.

R.D.
23.03.2010, 09:26
- SCRIPT -
<> Change Variable: [2] = X position on map (tiles) of hero
<> Change Variable: [3] = Y position on map (tiles) of hero
<> Fork Condition: If Hero is facing up then ...
. <> Change Variable: [3] -= 1
. <>
: End of fork
<> Fork Condition: If Hero is facing down then ...
. <> Change Variable: [3] += 1
. <>
: End of fork
<> Fork Condition: If Hero is facing right then ...
. <> Change Variable: [2] += 1
. <>
: End of fork
<> Fork Condition: If Hero is facing left then ...
. <> Change Variable: [2] -= 1
. <>
: End of fork
<> Get Event ID: (V[2], V[3]), Store in var. [4]
<> Fork Condition: If Variable [4] > 0 then ...
. <> Comment: DA IST WAS!
. <> Call Event: Map Event V[4], Page V[5]
. <>
: End of fork


doa D:

Felski
23.03.2010, 12:29
Ne,da bei mir es für jeden Gegner eine KI gibt und wenn man einen Gegner trifft,wird ein Switch aktiviert "Gegner X getroffen"
wenn du einfach diese Fork "If Event ID <10",wüsste der Maker nicht,welche Gegner genau du triffst.

könntest doch per pointer den switch abhängig von der event id dennoch anschalten.