collapse collapse

 Community


 User Info




Willkommen Gast. Bitte einloggen oder registrieren.

 Partnerseiten

rpgvx.net

Das Forum ist offline

Autor Thema: "Spieler berühren" aktualisieren!!!  (Gelesen 1182 mal)

Offline MicroJumper

  • Triple A
  • Event-Jongleur
  • **
  • Beiträge: 76
    • Makrosoftware.Jimdo.com
"Spieler berühren" aktualisieren!!!
« am: März 29, 2010, 00:59:07 »
Habe die Lösung!!!
Ich stell sie gleich hier rein...


Lösung:
Spoiler for Hiden:
Script: (Über "Main" einfügen)
Spoiler for Hiden:
# Script Autor: (Unbekannt)
# Script umgeschrieben von: MicroJumper


#    Benutzung: Um eine Abfrage zu starten, ob das Event neben einem Spieler steht,
#    zu starten, musst du unter Conditional Branch, Script, folgendes eingeben:

#    Bei Abfrage, ob IRGENDEIN (Keine ID) Event auf der selben Position ist, wie der Spieler einfach folgendes eingeben:

#    some_nearly_events?


class Game_Event
  attr_reader :id
end
class Game_Interpreter
  def some_nearly_events?
    for event in $game_map.events.values
      if next_to(event.id,true)
        return true
      end
    end
    return false
  end
  def some_passable_events_nearly?
    for event in $game_map.events.values
      if next_to(event.id,true) && right_priot(event)
        return true
      end
    end
    return false
  end
  def right_priot(event)
    return true if event.priority_type == 1# || event.priority_type == 2
    return false
  end
  def next_to(event_id1 = nil , player = false , event_id2 = nil)
    if player == false
      if $game_map.events[event_id1] != nil && $game_map.events[event_id2] != nil
        if $game_map.events[event_id1].x == $game_map.events[event_id2].x + 1 && $game_map.events[event_id1].y == $game_map.events[event_id2].y || $game_map.events[event_id1].x == $game_map.events[event_id2].x - 1 && $game_map.events[event_id1].y == $game_map.events[event_id2].y || $game_map.events[event_id1].y == $game_map.events[event_id2].y + 1 && $game_map.events[event_id1].x == $game_map.events[event_id2].x || $game_map.events[event_id1].y == $game_map.events[event_id2].y - 1 && $game_map.events[event_id1].x == $game_map.events[event_id2].x
          return true
        else
          return false
        end
      end
    end
    if player == true
      if $game_player.direction == 2
        if $game_player.x == $game_map.events[event_id1].x
          if $game_player.y == $game_map.events[event_id1].y
            return true
          end
        end
      end
      if $game_player.direction == 4
        if $game_player.x == $game_map.events[event_id1].x
          if $game_player.y == $game_map.events[event_id1].y
            return true
          end
        end
      end      
      if $game_player.direction == 6
        if $game_player.x == $game_map.events[event_id1].x
          if $game_player.y == $game_map.events[event_id1].y
            return true
          end
        end
      end
      if $game_player.direction == 8
        if $game_player.x == $game_map.events[event_id1].x
          if $game_player.y == $game_map.events[event_id1].y
            return true
          end
        end
      end
          
          return true
      else
          return false
      end
    end
  end



Event:



Hallo an alle^^
Ich brauche Hilfe bei einem Event... (kann vielleicht auch scripterisch gelößt werden)

also...
wenn man ein event macht, das auf "Unterhalb des Spielers", "Spieler berühren" eingestellt ist und es wenn das passiert z.B. eine Nachricht ausgibt,
gibt das Event eine Nachricht aus, wenn der Spieler auf das Event drauf lauft. Soweit so gut!

Meine Bitte:
Ich brauche eine methode, die es möglich macht, dass, wenn der Spieler schon auf dem event draufsteht, dass die Nachricht z.B. solange ausgegeben wird, bis der Spieler weggeht.
Es sollte ziemlich allgemein sein und das ist auch mein Problem!!

Beispiel:
Das Event soll z.B. per "Call Script": $update_event, dass event sozusagen neustarten und erneut abfragen, ob der Spieler gerade auf dem Event ist.
Und dass sollte nicht über Event_ID oder so funktionieren, sondern immer für dass Event, welches den "Call Script" gerade anwendet!

SOOOOOOO HIER NOCHMAL NE ERKLÄRUNG MIT VIDEO (Erklärung Seperat -.-)

Erklärung: (schaut euch bitte zuerst oder während ihr lest das Video an!)
Spoiler for Hiden:
Also... wie ihr oben IM VIDEO sehen könnt schwebt ein ring in der luft.
Das Event selbst ist der Schatten des Rings,
d.h. wenn Sonic auf den Schatten des Rings kommt,
passiert etwas, wenn eine Bedingung erfüllt ist. Also Sonic kann unter dem Ring laufen,
ohne das was passiert, wenn die Bedingung nicht erfüllt ist! Soweit so gut!

Ich brauche es so, dass wenn der Spieler auf dem Event ->
(Schatten des Rings) steht und (eine Taste drückt) -> Springt,
dass dann der Ring sozusagen "eingesammelt" wird.

Das klappt aber nicht, weil das Event nur beim Draufgehen
auf das Event die Eventseiten aktiviert.

z.B.:
Sonic geht auf den Schatten des Rings -> Event wird aktiviert,
bleibt aber durch Bedingungen unaktiv.
Sonic bleibt auf dem Schatten und drückt bedingte Taste -> passiert nix


Was ch brauche:
Sonic geht auf den Schatten des Rings -> Event wird aktiviert,
bleibt aber durch Bedingungen unaktiv.
Sonic bleibt auf dem Schatten und drückt bedingte Taste -> Ring wird eingesammelt


Kompliziert neh^^

Danke an alle die helfen!

Anschaulichkeits-Video:
Spoiler for Hiden:

Ich weiß ist glaub ich komisch erklärt, aber besser gehts meines wissens nicht^^
bitte bitte helft mir... ist wichtig für mein Sonic Projekt!!!
« Letzte Änderung: März 29, 2010, 16:33:55 von MicroJumper »

Re: "Spieler berühren" aktualisieren!!!

Offline Kvote

  • Angehender Tutorinator :D
  • Mr. MACK-Tile
  • ***
  • Beiträge: 219
  • Change the Set, change the World!
    • My Senseless World - Enter it!
Re: "Spieler berühren" aktualisieren!!!
« Antwort #1 am: März 29, 2010, 01:12:04 »
Also so wie ich das verstehe, willst du lediglich das sich dass Event sobald man es berüchrt aktiviert wird und nicht mehr verschwindet bis man weggeht.. hm dafür braucht es glaube ich kein Skript, denn wenn es eine einfach Textnachricht ist, wird sie so lang angezeigt bis der Spieler ne Taste drückt, und dann wird sie wieder angezeigt....
Oder geht es dir hierbei um eine Textabfolge, welche automatisch abläuft ?


Kvote

Re: "Spieler berühren" aktualisieren!!!

Offline Razael

  • Helfende Hand.
  • Mr. MACK-Tile
  • ***
  • Beiträge: 282
Re: "Spieler berühren" aktualisieren!!!
« Antwort #2 am: März 29, 2010, 02:07:57 »
Kvote...
Er will ein Script welches er dafür benutzen kann auf Bestimmten Punkten eine Abfrage zu starten ob der Spieler sich auf diesem Feld befindet.
Wenn der Spieler draufsteht soll eben das Event gestartet werden welches auf dem Feld durch eben dieses Scriptes abgefragt wird.
Sprich:
Spieler steht drauf, erscheint eine nachricht die "nur" dann weggeht wenn der Spieler vom Feld geht.

@MicroJumper:
Das wolltest du doch oder?
Nimm das Leben wies kommt und Geniesse die guten Momente und Lerne aus den Schlechten.
Spoiler for Hiden:
Disorder | Rating
Paranoid: Low
Schizoid: Low
Schizotypal: Low
Antisocial: Low
Borderline: Low
Histrionic: Low
Narcissistic: Low
Avoidant: Low
Dependent: Low
Obsessive-Compulsive: Low

URL of the test: http://www.4degreez.com/misc/personality_disorder_test.mv
URL for more info: http://www.4degreez.com/disorder/index.html
Spoiler for Hiden:
Take the Magic: The Gathering 'What Color Are You?' Quiz.[/div][!--SPOILER DIV--][/div][!--SPOILER DIV--]
Spoiler for Hiden:
Zu 30 % sind Sie: Du bist ein Phönix!
Du bist Jahrtausende alt und weise.
Test[!--SPOILER DIV--][/div][!--SPOILER DIV--]
Spoiler for Hiden:
Zu 69 % sind Sie: Gratulation! Deine emoti

Re: "Spieler berühren" aktualisieren!!!

Offline MicroJumper

  • Triple A
  • Event-Jongleur
  • **
  • Beiträge: 76
    • Makrosoftware.Jimdo.com
Re: "Spieler berühren" aktualisieren!!!
« Antwort #3 am: März 29, 2010, 02:10:21 »
@Kvote:
nene^^ ganz falsch... die Nachrichtenausgabe war nur ein Beispiel!
eigentlich ist es viel komplizierter, aber ich wollts halt so einfach wie möglich demonstrieren...

wenn z.B. der Spieler auf einem Event steht, dass einem dann +1 Geld gibt, bekommt man nur 1 Geld dazu!!
d.h. man muss erst immer wieder runter und wieder aufs event drauf um +1 mehr Geld zu bekommen!

ich brauchs aber so, dass der Spieler dann +1 Geld bekommt, wenn er auf dem event steht, dass event sich dann "neu startet", und dann automatisch wieder +1 Geld gibt! Also ohne dass der Spieler ständig hin und her laufen muss

und nein keine parallel oder autoruns bitte... -.- klappt alles nicht.
das oben ist auch wieder nur ein Beispiel.

@Razael:
jap gold-richtig glaub ich xD

Re: "Spieler berühren" aktualisieren!!!

Offline Falagus

  • Pi ist genau 3
  • Ralph
  • *
  • Beiträge: 10
  • -10% + 10% = -1%
Re: "Spieler berühren" aktualisieren!!!
« Antwort #4 am: März 29, 2010, 03:50:34 »
Heyho :D ich glaub ich hab.....

Zitat
und nein keine parallel oder autoruns bitte... -.- klappt alles nicht.


sry^^'.. naja hatte da son spontanen gedanken was ein tuche/parallel-event angeht
 
wenn das dir nicht weiterhilft dann kapier ich echt nicht was du suchst... :3

Eventseite 1 : Touch
Spoiler for Hiden:

Eventseite 2 : Parallel
Spoiler for Hiden:

ich diesem beispiel bekommt man jede halbe sekunde 1 gold solange man drauf steht

Zitat
Es sollte ziemlich allgemein sein und das ist auch mein Problem!!

meinst du damit das es vielseitig eigesetzt werden kann ohne dass man immer wieder alles neu einzustellen muss?
>allgemein<... hmm ^^' wenn ja damit sollte das auch gehen.

(K.A .ob man das per Script besser lösen kann wahrscheinlich schon aber sowas kann ich ja nich habt erbahmen ihr weisen Gotter des Vx'es!)

Re: "Spieler berühren" aktualisieren!!!

Offline MicroJumper

  • Triple A
  • Event-Jongleur
  • **
  • Beiträge: 76
    • Makrosoftware.Jimdo.com
Re: "Spieler berühren" aktualisieren!!!
« Antwort #5 am: März 29, 2010, 04:01:05 »
wieder nicht das was ich brauch xD naja trotzdem danke für die mühen...
morgen (heute^^) wenn ich ausgeschlafen hab, erklär ichs nochmal von vorne mit screenshots und so^^
ist wirklich sehr kompliziert^^



Also Erklärung nochmal neu gemacht, mit Video... Siehe Oben!
« Letzte Änderung: März 29, 2010, 15:46:07 von MicroJumper »

Re: "Spieler berühren" aktualisieren!!!

Offline PDM

  • Bibliothekar
  • Global Mod
  • VX-Kenner
  • ****
  • Beiträge: 468
    • Mein Blog
Re: "Spieler berühren" aktualisieren!!!
« Antwort #6 am: März 29, 2010, 16:13:13 »
Ich würde mir ja gerne das video anschauen, aber es ist privat geschaltet.
Aber so wie ich deine Erklärung mit dem Gold verstanden habe, wäre Falagus Methode eine Möglichkeit.
PDM's Gameplays
Skype-Name: lordpdm

Re: "Spieler berühren" aktualisieren!!!

Offline Colonios

  • Maker Nerd
  • VX-Kenner
  • ****
  • Beiträge: 596
  • Events <3
Re: "Spieler berühren" aktualisieren!!!
« Antwort #7 am: April 01, 2010, 20:01:30 »
Ich hab grade den ersten Post nicht richtig kapiert, aber du scheinst es gelöst zu haben? Hab grade ne Antwort geschrieben und dann erst gerallt, dass das ein Lösungs weg ist und nicht dein Problem ^^ hätte es nämlich auch so gemacht und habe mich schon gewundert...

 


 Bild des Monats

rooftop party

Views: 3615
By: papilion

 Umfrage

  • Wer soll das BdM gewinnen?
  • Dot Kandidat 1
  • 3 (25%)
  • Dot Kandidat 2
  • 1 (8%)
  • Dot Kandidat 3
  • 2 (16%)
  • Dot Kandidat 4
  • 0 (0%)
  • Dot Kandidat 5
  • 6 (50%)
  • Stimmen insgesamt: 12
  • View Topic

 Schnellsuche





SimplePortal 2.3.3 © 2008-2010, SimplePortal