Ergebnis 1 bis 17 von 17

Thema: Skill für Beschwörung

  1. #1

    Skill für Beschwörung

    Hi^^
    Ich möchte einen Skill machen, der ein Monster heraufbeschwöret, dass für deinen Helden kämpft und so. Dafür hab ich in der Database einen Skill namens "Schleim beschwören" gemacht, welcher den Switch "Schleim" auf ON setzt. Ist dieser eingeschaltet, wird ein Common Event gestartet. Dieses ruft das Event "Schleimbeschwörung" auf und schaltet "Schleim" auf OFF. "Schleimbeschwörung ist ebenfalls ein Common Event und fügt zu Beginn den Hero "Schleim" in die Party ein. Dann hab ich ein 30 s langes "Wait" eingebaut und danach wird der Hero wieder entfernt.

    Meine Fragen:
    a) Was lässt sich hierbei besser machen?
    b) Was muss ich machen, damit immer nur ein Monster beschworen wird (z.B. dass eine Message kommt, wenn du ein Skelett beschwören willst: "Du hast bereits ein Monster beschworen!")?

  2. #2
    30 sekunden?
    Etwas kurz oder^^

  3. #3

  4. #4
    Zitat Zitat von Chillkröte Beitrag anzeigen
    b) Was muss ich machen, damit immer nur ein Monster beschworen wird (z.B. dass eine Message kommt, wenn du ein Skelett beschwören willst: "Du hast bereits ein Monster beschworen!")?
    Na ganz einfach einen Switch, der speichert, ob bereits ein Monster beschworen wurde und eine dazu passende Fork in jedem Beschwörungscommonevent

  5. #5
    Es will leider nicht so richtig klappen... Könntest du mir es bitte genauer erklären? ^^

  6. #6
    Wenn dein Monster beschworen wurde stellst du den Switch : Monster da
    auf on.
    Vor dein Beschwörungsevent setzt du eine Fork Kondition(findest auf der dritte Seite der Event Befehlen rechts)das müsste dann etwa so aussehen
    [FONT="Arial Narrow"]<>If Switch(XXXX:Monster da)is ON
    <>Message: Du hast bereits ein Monster beschworen
    :Else Case
    <>Beschwörungs event(hab keine Lust alles hier reinzuschreiben )[/FONT]
    So sollte das am Ende aussehen

  7. #7
    Ok also bei mir sieht das jetz so aus und funzt immer noch nicht.


  8. #8
    Das liegt glaub ich daran das du aus dem KS keine Commonevents aufrufen kannst. So leids mir tut du musst für jede Monster party dieses Event erstellen müssen.

  9. #9
    Man kann den Skill aber sowieso nur außerhalb des Kampfes einsetzen, also liegts bestimmt nicht daran ^^

  10. #10
    Versuch mal das ganze Event in ne Fork zu setzen und mach den haken bei "Appearence Conditons Switch" weg...sonst fällt mir da nix auf

  11. #11
    Schwachsinn
    Dein Fehler ist, das du nachdem das Monster schon verschwunden ist, die Switch dafpr anmachst das ein Monster da ist.
    Sprich, der Switch, das ein Monster bereits beschworen wurde, muss vor der Warte zeit angemacht werden D:

  12. #12
    Ok hab ich gemacht und es funzt leider immer noch nicht.

    EDIT:

    Hm also ich noch einen zweiten Skill gemacht mit dem man ein Skelett beschwören kann.
    Hab ich einen Schleim beschworen und will noch einen beschwören kommt keine Message.
    Hab ich einen Schleim beschworen und will ein Skelett dazu beschwören kommt die Message.
    Hab ich ein Skelett beschworen und will noch eins dazu beschöern kommt keine Message.
    Hab ich ein Skelett beschworen und will einen Schleim dazu beschören kommt die Message.

    Will ich also dasselbe Monster 2mal beschwören kommt keine Message.
    Sehr, sehr seltsam...

    Geändert von Chillkröte (17.04.2009 um 19:33 Uhr)

  13. #13
    Mach mal vom neuen Code nen Screenshot, sonst kann man dir schlecht helfen. Der alte Code-Screenshot hat ja noch von den R.D. angesprochenen Fehler, der Switch wird an der falschen stelle ON und nirgends OFF gesetzt.

    Nochwas, ein wait in einem Code, der vor dem Ende des waits nochmals aufgerufen werden könnte, ist schlechter Stil. Bau dir lieber einen künstlichen Zähler, sprich setz eine Variable hoch die ein paralleler Prozess runterzählt um dann bei null das Ding zu löschen.
    Ich glaub nämlich, das ist dein Fehler:
    Du aktivierst das Schleim-PP, das in Wait 60s geht, per Switch. Anschließend, bevor die 60s abgelaufen sind, aktivierst du denselben Switch ein zweites Mal. Das sorgt für absolut nichts weil der Switch ja eh noch an ist, da die 60s noch nicht abgelaufen sind und nix den Switch deaktiviert hat.
    Daher: künstlicher Zähler. Mit dem ist das bisherige Schleim-PP frei von waits und kann sofort wieder reagieren.

    Geändert von Dhan (17.04.2009 um 23:44 Uhr)

  14. #14
    Also hier der neue Code:



    Könntest du mir auch sagen, wie es dann nach deinen Vorstellungen aussehen müsste? ^^ Wenn ichs richtig verstanden habe, müsste ich im ElseCase der ForkCondition noch eine Fork einbauen mit der Bedingung: "Variable XYZ=0". Wenn das zutrifft, wird dann der Held wieder entfernt. Bloß wo muss ich dann den PP aufrufen, der die Variable kleiner macht? Und muss ich in den PP noch ein wait von 1s einbauen, damit jede Sekunde die Variable um 1 kleiner wird?

    Geändert von Chillkröte (18.04.2009 um 21:17 Uhr)

  15. #15
    Du musst den wait durch diesen Variablen zähler ersetzen.
    Du machst einfach statt dem Wait einen Loop (findest du auf der dritten seite der Event befehle unter "Cycle")Dann setzt du einen Wait von 1sec und dann den Befehl das de Variable xyz um 1 runtergesetzt werden soll. Dann machst du eine Fork die checkt ob die variable xyz gleich 0 ist. Wenn sie es ist benutzt du den "Break Cycle" Befehl (Der ist direkt unter dem Cycle Befehl)
    Hinter dem Loop beginnt dann der Beschwörung beenden code.
    Vor den Loop setzt du dann noch die Variable xyz auf 60 (halt die Beschwörungszeit)
    Müsste dann im Maker so aussehen:

  16. #16
    Wenn der Loop im gleichen Event ist, läufts aufs gleiche raus.

    Meine Vorgehensweise:
    Code:
    Zauber Schleim: aktiviert Switch "Schleim"
    Zauber Skelett: aktiviert Switch "Skelett"
    
    CE-PP Schleim (aktiviert durch Switch Schleim):
    fork (Switch Beschwörung ON) {
      Message "Es ist bereits etwas beschwört"
      (hier evtl MP zurückgeben)
      Switch Schleim OFF
    }
    else {
      Change Variable "Counter" = 60
      Switch Beschwörung ON
      Change Party: Add Schleim
      Message "Schleim beschworen"
      Switch Schleim OFF
    }
    
    CE-PP Skelett: äquivalent
    
    CE-PP Counter (aktiviert durch Switch Beschwörung):
    wait 1s
    Counter - 1
    fork (Counter = 0){
      Change Party: Remove Schleim
      Change Party: Remove Skelett
      Message "Beschwörung endete"
      Switch Beschwörung OFF
    }
    Wie gesagt, der Unterschied ist, dass im eigentlichen Event kein wait mehr ist. Denn wie gesagt, was passiert sonst?
    Held aktiviert Switch Schleim
    PP Schleim wird durch den Switch aktiv
    PP Schleim macht alles bis zum wait
    PP Schleim wartet, sagen wir 29 Sekunden, hat noch nicht den Switch Schleim deaktiviert
    Held aktiviert Switch Schleim der bereits aktiviert ist, keine Veränderung der Situation, PP Schleim reagiert entsprechend nicht

  17. #17
    Super es funktioniert. Vielen, vielen dank nochmal an alle. ^^

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •