PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Conditions....frage



RandyTheZeldaFan
16.07.2010, 20:34
Hey


ich mach gerne Items wie "Berserker-Gebräu" oder "Hast-Pulver" usw.

naja....ich möchte dass die kondition "Berserk" zu 100% trifft...ich merke da, dass die Hilf Items net rechtmäßig treffen....(der chara soll ja die kondition zu 100% haben nach der verwendung des Items!)

hilfe

~Jack~
17.07.2010, 00:18
Stell einfach bei den Zuständen für jeden Grad (also A-E) 100% ein.

RandyTheZeldaFan
17.07.2010, 08:57
asooo....ich dachte wenn die Priorität 100% beträgt triffts immer

jetzt hätt ich noch ne frage, geht nicht um conditions....


ich habe in meinem game reingebaut, dass man jemand verfolgen muss, aber sich net von ihm sehen lassen darf...das hab ich hinbekommen...

das einzigste was ich gern noch haben möchte is, dass wenn der chara den man verfolgen muss aus dem bild is, dass man ihn automatisch aus den augen verloren hat und wieder zurück zum anfangspunkt muss...weiß jemand wie man das macht?

niR-kun
17.07.2010, 19:24
Du schaust einfach ob die Szenen-Position des Event (ja das kann man abfragen) innerhalb von 0 bis 320 (x-Koordinate) und 0 bis 240 (y-Koordinate) liegt. Wenn nicht, teleportierst du den Helden wieder zurück zum Anfangspunkt und setzt dein Verfolgungsscript zurück. ;)

RandyTheZeldaFan
17.07.2010, 19:36
ich dachte die ganze zeit, dass screen relative X/Y nur für bilder sind O.o
biste dir sicher? 320 und 240? bei mir klappts net

oder eher, welche szenen koordinaten sollen abgefragt werden, vom held oder vom event?

hab abgefragt:
If Screen X 0 lesser
If Screen Y 0 lesser
<>Teleport
<>Switches OFF

If Screen X 320 greater
If Screen Y 240 greater
<>Teleport
<>Switches OFF

ich möcht ja dass wenn das event nichtmehr zu sehen is (es läuft bestimmte schritte), dass man zurückteleportiert wird...


und wenn er ausm bild is, passiert nix
(wow....also in meinen nächsten video werd ich mich persönlich am rpg atelier forum herzlichst bedanken, geht hier an alle! :))

Rinober
17.07.2010, 20:02
ich dachte die ganze zeit, dass screen relative X/Y nur für bilder sind O.o
biste dir sicher? 320 und 240? bei mir klappts net

hab abgefragt:
If Screen X 0 lesser
If Screen Y 0 lesser
<>Teleport
<>Switches OFF

If Screen X 320 greater
If Screen Y 240 greater
<>Teleport
<>Switches OFF

und wenn er ausm bild is, passiert nix
(wow....also in meinen nächsten video werd ich mich persönlich am rpg atelier forum herzlichst bedanken, geht hier an alle! :))

Irre ich mich oder fragst du gleichzeitig beide (also X und Y-Koordinaten) ab? Wenn du es so gemakert hast wie du den Code hier beschreibst, dann passiert nämlich nur etwas, wenn der verfolgte Chara links aus dem Bild verschwindet UND gleichzeitig oben aus dem Bild verschwindet bzw. wenn der Chara rechts aus dem Bild verschwindet UND gleichzeitig nach unten verschwindet.

Mach die Abfragen am besten so:

<>If Screen X 0 less
<>Teleport

Und das dann noch für jede der vier Himmelsrichtungen, also insgesamt 4x für X<0 , X>0 , Y<0 , Y>0.
Es sei denn, du willst wirklich, dass zwei der Bedingungen erfüllt sein sollen. Dann machst du es so wie du schon selbst beschrieben hast (aus deiner Frage heraus glaube ich aber nicht, dass du das beabsichtigt hast).

RandyTheZeldaFan
17.07.2010, 20:16
also ich check da nichmehr durch...

ich habe alles abgefragt X 0 >, < Y 0>, <

es klappt net und die move events vom event beeinträchtigt das ebenfalls



- SCRIPT -
<> Wait: 0,1 sec.
<> Fork Condition: If Variable [135] <= 0 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <>
: End of fork
<> Wait: 0,1 sec.
<> Fork Condition: If Variable [136] <= 0 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <>
: End of fork
<> Wait: 0,1 sec.
<> Fork Condition: If Variable [135] >= 0 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <>
: End of fork
<> Wait: 0,1 sec.
<> Fork Condition: If Variable [136] >= 0 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <>
: End of fork
<> Wait: 0,1 sec.

Rinober
17.07.2010, 20:27
Oh, sorry, ich hab mich verschrieben...
Natürlich ist es unsinnig abzufragen, ob die Koordinaten größer als 0 sind.
Richtig müsste es so sein:



If Screen X < 0
<>Handlung

If Screen X > 320
<>Handlung

If Screen Y < 0
<>Handlung

If Screen Y > 240
<>Handlung


Sorry nochmals, war irgendwie woanders mit den Gedanken xD
So müsste es aber nun klappen!

RandyTheZeldaFan
17.07.2010, 20:34
sorry...aber wenn das event ausm bild is passiert nix...null

Rinober
17.07.2010, 20:42
Also bei mir klappt's so wunderbar...
Legst du auch die Koordinaten des Events fest, was davonläuft?

Also ungefähr so:
<>Variable [0001] Set, Event(davonlaufender Chara) Screen X
<>Variable [0002] Set, Event(davonlaufender Chara) Screen Y
bzw. bei dir wären es dann die Variablen [0134] und [0135]

Die muss man natürlich erstmal so festlegen (am besten per Parallel Process und dauerhaft, da sich die Position des Events ja verändert), bevor man dann abfragen kann, ob die Koordinaten außerhalb des Bildschirms sind.

Ansonsten wüsste ich jetzt wirklich nicht, wo ein Fehler sein sollte. Sonst schick ich dir mal ein kleines Skript oder so zum Nachbauen, wenn's immer noch nicht geht ;)

~Jack~
17.07.2010, 20:44
Dann musst du etwas falsch machen. Hab es grad selbst getestet und bei X < 0, X > 320, y < 0 und y > 240 springt das Event problemlos an und das Objekt ist dabei auch wirklich knapp außerhalb des Bildes.

RandyTheZeldaFan
17.07.2010, 20:52
klappt net...ich lasse die vari dauerhaft abfragen




- SCRIPT -
<> Wait: 0,0 sec.
<> Fork Condition: If Variable [137] < 0 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <> Wait: 0,0 sec.
. <>
: End of fork
<> Wait: 0,0 sec.
<> Fork Condition: If Variable [137] > 320 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <> Wait: 0,0 sec.
. <>
: End of fork
<> Wait: 0,0 sec.
<> Fork Condition: If Variable [138] < 0 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <> Wait: 0,0 sec.
. <>
: End of fork
<> Wait: 0,0 sec.
<> Fork Condition: If Variable [138] > 240 then ...
. <> Change Switch: [239] = OFF
. <> Show Message: Du hast ihn aus den Augen verloren...
. <> Set Screen Tone: (R200, B200, G200, C100), 1,8 sec., Wait
. <> Change Switch: [239] = OFF
. <> Teleport: Map #101, (25, 62), Face down
. <> Set Event Location: Event #1 -> (35, 55), Face up
. <> Set Event Location: Event #3 -> (41, 65)
. <> Play Memorized BGM
. <> Set Screen Tone: (R100, B100, G100, C100), 1,2 sec., Wait
. <> Wait: 0,0 sec.
. <>
: End of fork
<> Wait: 0,0 sec.



sop, das is die abfrage, in nem pp auf map

varis werden dauerhaft gesettet

Rinober
17.07.2010, 20:54
Die von dem Event, welches davonläuft. Denn dieses Event ist es ja, was aus dem Bildschirm herausläuft.
Der Hero kann nicht außerhalb des Bildschirms gelangen (außer durch Pan Screen).

http://npshare.de/files/f2836c44/Zwischenablage01.jpg
Dasselbe nochmal für die Y-Koordinate.

RandyTheZeldaFan
17.07.2010, 21:02
das hab ich ja gemacht, auf ner seperaten map event (PP)

und mein move event lahmt wegen meinem script....:(

kann mir net jemand genau sagen wie das alles funzt und so schrittweise erklären? ich mach das jetzt dann alles neu weil echt nix klappt

Rinober
17.07.2010, 21:16
Ich hab mal ein kleines Skript zum Nachbauen gemacht:

http://npshare.de/files/54e7dc72/Bildschirmabfrage.rar

Schau dir am besten einfach die beiden Events oben auf der Map im Maker an.


Nochmal eine theoritische Anleitung:
1) Du erstellst ganz einfach erstmal ein Event (nennen wir es Event 1. Es ist das, was der Auslöser für ein anderes Event 2 wird, sobald Event 1 außerhalb des Bildschirms ist)
2) In einem Parallel Process legst du die Koordinaten dieses Events 1 fest. Zuerst eine Variable für die Scene X - Koordinate und dann eine weitere Variable für die Scene Y - Koordinate (wie bei dem Bild oben).
3) Nun fragst du (entweder im selben Parallel Process Event oder einem neuen, also Event 2), ob die Koordinaten außerhalb des Bildschirms liegen (hast du eigentlich schon richtig hinbekommen).


btw was ist denn Switch 239 bei dir? Den stellst du gleich 2x off. (Change Switch: [239] = OFF)
Vielleicht ist es ja nötig, dass der ON ist, damit dein Event weiterläuft... Wäre die letzte Möglichkeit, die mir einfiele.
Probier es aber besser nochmal mit dem Skript.

RandyTheZeldaFan
17.07.2010, 21:32
es klappt!! keine ahnung warums net funzte...aber naja.....vielen dank!

Cherry
18.07.2010, 12:00
Nur ein kleiner Tipp: du musst da nicht 4x den selben Code reinmachen.

Du kannst es so machen:

<> Erste Fork
... <> Jump To Label 1
<> Zweite Fork
... <> Jump To Label 1
<> Dritte Fork
... <> Jump To Label 1
<> Vierte Fork
... <> Jump To Label 1
<> Jump To Label 2
<> Label 1
<> Du hast ihn aus den Augen verloren!
<> Label 2

EDIT: es geht sogar noch "einfacher", ist dann aber vllt nicht mehr so gut zu verstehen:


<> Erste Fork (GEGENTEIL abfragen!)
... <> Jump To Label 1
<> Zweite Fork (GEGENTEIL abfragen!)
... <> Jump To Label 1
<> Dritte Fork (GEGENTEIL abfragen!)
... <> Jump To Label 1
<> Vierte Fork (GEGENTEIL abfragen!)
... <> Jump To Label 1
<> Du hast ihn aus den Augen verloren!
<> Label 1