Ums kurz zu fassen: Ich suche jemanden der mir hilft eine Schleichaktion àla Splinter Cell zu machen. Also man muss im Schatten bleiben um nicht gesehen werden. Man kann aber dicht hinter im laufen.
Hoffe ihr könnt mir helfen
Ich denke der einfachste Weg sind die Terrain IDs.
Mach einfach 11 neue Terrain IDs die du mit 0-100 benennst (in 10er Schritten).
Jetzt schreibst du als Code nur:
Hier bedeutet dann der Wert der Variable "Akutelle Sichtbarkeit" bei 1 "unsichtbar" bei 2 10% Sichtbar bei 3 20% Sichtbar usw.
Um ehrlich zu sein... Hab ich nichts verstanden^^
Ich bin ,was die Makertechnik angeht nicht so ganz der hellste xD
Mhhh... Aber ich guck was ich draus machen kann...
Danke trotzdem
OK, also dann nochmal etwas ausführlicher.
Also, als erstes die 11 neuen Terrains:
So, nun das Event dazu, was alles abfragt:
Unten geht dies einfach so weiter. Ganz am Ende steht dann noch ein Wait von 0,1.
Damit ist der grobe Teil schonmal fertig.
Die Variable "Schattenstärke" gibt nun an wie stark der Schatten ist, also wie gut man den Helden sehen kann. 0 ist hier 0%, 2 ist 20%, 8 ist 80% und 10 ist 100%...
Ich denke den Rest kannst du dir erschließen.
Bei einem Gegner kannst du dann in der Abfrage ob er einen sieht oder nicht die Entfernung zum Helden errechnen und das in Verbindung mit dem Schatten bringen. Ist der Schattenwert zu schwach und der Held zu nah am Gegner wird er gesehen. Der Rest ist dann wirklich ein Kinderspiel
OK, also dann nochmal etwas ausführlicher.
Also, als erstes die 11 neuen Terrains:
So, nun das Event dazu, was alles abfragt:
Unten geht dies einfach so weiter. Ganz am Ende steht dann noch ein Wait von 0,1.
Damit ist der grobe Teil schonmal fertig.
Die Variable "Schattenstärke" gibt nun an wie stark der Schatten ist, also wie gut man den Helden sehen kann. 0 ist hier 0%, 2 ist 20%, 8 ist 80% und 10 ist 100%...
Ich denke den Rest kannst du dir erschließen.
Bei einem Gegner kannst du dann in der Abfrage ob er einen sieht oder nicht die Entfernung zum Helden errechnen und das in Verbindung mit dem Schatten bringen. Ist der Schattenwert zu schwach und der Held zu nah am Gegner wird er gesehen. Der Rest ist dann wirklich ein Kinderspiel
...
Schön und gut, aber kann man mit der terrainversion auch machn, dass sich der von dem man nicht gesehn werden soll, bewegt?
Ich kann mir das so mit Terrain ID`s nich vorstelln, nur mit Hero X, Hero Y, WacheX un WacheY (Beispielsweise)
Jedoch ist das etwas aufwendiger als die Terrain ID, wie gesagt kann man es auch so machn das sich die Wache bewegt?
Ich weiß jetzt leider nicht so genau wie du das meinst ^^°
Natürlich muss, damit die Wachen mit dem Helden interagieren können, eine Koordinatenabfrage her. Aber das hat ja erstmal nichts mit den Schatten zu tun...
Wenn du den Schattenwert erstmal hast ist es recht einfach den Rest zu machen. Man kann ja auch zwei Systeme kombinieren...
Bei der Wache steht dann (vereinfacht):
Das wirkt jetzt erstmla recht kompliziert, ist es aber nicht.
Ganz zu Anfang weise ich erstmal die Variablen der Koordinaten zu, dann ziehe ich die X, bzw. Y Werte der Wache von denen des Helden ab. Nun erhalten wir eine bestimmte Zahl die die Entfernung angibt.
(Steht die Wache auf 10|8 und der Held auf 9|6 erhalten wir als Wert -1|-2)
Nun müssen wir nur noch abfragen ob diese Werte in einem bestimmten Radius liegen. Dazu weise ich erstmal der Variable "Maximale Entfernung" einen Wert zu, der dem aktuellen Schattenwert des Helden entspricht. Wie du oben sehen kannst kann die Wache den Helden über 10 Felder hinweg sehen, sollte sein Schattenwert 0 sein, über 9 Felder, wenn dieser 1 ist, über 8 Felder wenn dieser 2 ist, usw.
Danach kommt dann nur noch die Abfrage ob der Held auch in diesem Bereich ist. Da (wie im Beispiel) der Held ja auf allen 4 Seiten stehen kann, muss die Abfrage auch für den negativen Bereich durchgeführt werden. Um keine neue Variable zu verbrauchen, die den selben Wert hat wie die Variable "Maximale Entfernung", nur negativ, rechne ich immer, wenn es gebraucht wird, einmal mal minus eins und erhalte damit den negativen Wert.
So sähe das für das Beispiel aus bei einem Schattenwert von 4:
Da hier alles übereinstimmt würde die Wache den Helden sehen.
Ich hoffe das ganze war einigermaßen verständlich ^^
mfg
Phönix Tear
P.S.:
Kann sein das es eine bessere Möglichkeit gibt. Dann bitte ich denjenigen der sie kennt diese zu posten, damit ich auch davon profitiere ^^
Nope, mit Terrain IDs sind die Schatten fest, d.h. es ist unmöglich sich bewegende Schatten umzusetzen. Mit dem Befehl "(Chipsatz-)Tile austauschen" zu arbeiten funktioniert auch nicht, da man damit immer gleich eine komplette Tile-Art austauscht.
Wenn man wirklich so machen will, das die Schatten sich auch verändern können, sich also wegbewegen und man plötzlich im Licht steht, dann fallen mir nur 3 Möglichkeiten ein.
Die erste wäre eine Mischung aus dem Vorschlag von Phönix Tear und Variablen. Wenn also der Gegner beispielsweise eine Taschenlampe bei sich trägt, mit der er den Held sieht, müsste man zusätzlich noch eine Abfrage erstellen, die abfragt ob sich der Held beispielsweise 3 Kästchen vor dem Gegner befindet.
Bei der zweiten Lösung die mir einfällt, wird über Events die auf "On Hero Touch/Bei Heldberührung" eingestellt sind. Wenn sich der Schatten wegbewegt, werden die Events auch wegteleportiert. Auch wenn ich diese Lösung noch nicht ausprobiert hab, würde ich von dieser abraten - viel zu viele Events pro Map, für meinen Geschmack.
Lösung 3 ist eine reine Variablen-Lösung. Bei dieser Lösung wird einfach abgefragt ob sich der Held in dem sichtbaren Bereich befindet, evntl. noch mit Abstufungen bei der Sichtbarkeit.
cya
Deathball
der hofft wenigstens einigermaßen verständlich geschrieben zu haben, obwohl er selbst nicht daran glaubt ^^°
Tja, bewegende Schatten hatte ich nicht einberechnet ^^°.
Aber wie gesagt, die Kombination ist es...
Du musst im Endeffekt einfach noch vor meinen Code ein
setzen und alle Probleme sind gelöst...
Tritt der Held nun auf ein Feld wo der Schatten sich variabel ändert steht einfach in dem Event:
Dieses Event muss dann einfach nur so viele Seiten haben, wie es unterschiedliche Zustände gibt. Natürlich darf man dann nicht vergessen um dieses Event andere Events zu positionieren, die dann den Switch "Schattenabfrage" wieder auf "ON" stellen.
Bei der Taschenlampe musst du dann einfach (was heißt hier einfach XD) den Code so wie Chr!zZ es schon angedeutet hat, erweitern.
Indem du eine Abfrage hinzufügst wo drinnsteht, dass wenn der Held auf eine bestimmte Entfernung an die Wache mit Taschenlampe rankommt und der Held in Blickrichtung steht, auch der Alarm aktiviert wird
Falls ich das auch noch erklären soll, sag bescheid...