PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Objektplatzierung durch Spieler?



Rinober
09.11.2009, 15:05
Hi Leute :) Man, ist das ein scheiß Wetter heute.

Ich hab da mal eine Frage bzw. eine Idee, die ich nicht wirklich umsetzen kann.
Ich möchte ganz einfach ein "Objektplatzierungsskript" erstellen.
Der Spieler soll die Möglichkeit haben, z.B. Möbel zu kaufen und diese anschließend selbstständig in seiner Wohnung zu platzieren (Sims-mäßig). Wie man dieses Platzieren jedoch hinbekommen soll, weiß ich nicht. Ich hätte da eine Methode im Kopf, die aber ziemlich umständlich und grausam wäre und ehe ich es auf diese Weise mache, mache ich es lieber gar nicht.

Von daher dachte ich, dass hier vielleicht jemand einen Lösungsvorschlag hat? Oder ein Skript? Ich meine, mal eins in der Art gesehen zu haben, weiß aber nicht mehr wo.
Bin dankbar für Tipps!
Schönen Tag noch :)

Karl
09.11.2009, 15:18
Auf jeden Fall, ist bei dir auch fetter Nebel? man, das betrübt ja schon bei einem Seitenblick. Nun ja, zum Thema. Es kommt erstmal auf den Maker an. Ich denke, dass das bei XP und VX per RGSS einfach von statten gehen könnte. Bei rpg2k(3) würde ich sagen, dass du die Charsets für die einzelnen Gegenstände in der Wand versteckst und dann per Event Placing dorthin platzierst, wo der Heldencursor ist. Also den Helden durch einen Cursor ersetzt, damit kannst du auch begrenzen, wo er überall hinkann. Aber ich befürchte fast, dass du dir das auch schon gedacht hast.

Kestal
10.11.2009, 09:23
einziege nachteil wird sein wenn die möbel mehr als ein tile breit sind xD
da müsste denn halt noch ne wende animation eingebaut werden....mit dem ganzen dreh schnick schnack etc könnte das ganze aber recht aufwendig werden...die frage hierbei ist lohnt sich der aufwand dennd ann überhaubt noch?
weiß ja nich wozu du sowas einbauen willst

Spongie *W*
11.11.2009, 00:03
Nun, ein Skript gibts hier:
http://www.rpg2000.4players.de:1061/scripts/Raumgestaltung.zip

Ist aber sehr simpel gemacht, und zeigt "nur" das Grundprinzip.

Rinober
11.11.2009, 17:01
Nun, ein Skript gibts hier:
http://www.rpg2000.4players.de:1061/scripts/Raumgestaltung.zip

Ist aber sehr simpel gemacht, und zeigt "nur" das Grundprinzip.

Das funzt bei mir nicht ("Image1 kann nicht gefunden werden").
Aber dankeschön für die Tipps :)
Auf das mit dem Set Event Place bin ich noch gar nicht gekommen, danke Karl xD
Es wird wohl darauf hinauslaufen dass ich dann bloß 1-Tile-Chars verwende und größere Sachen nur an bestimmten Stellen platziert werden können...

makenshi
12.11.2009, 08:48
Das muss nicht zwangsläufig sein. Hast du schon einmal ein Echtzeit Strategiespiel gespielt? Dort werden Gebäude platziert indem man quasi ein Bild über die Karte zieht und dann an die Stelle klickt an der man das Gebäude stehen haben möchte.

Sowas lässt sich beim Maker auch relativ "leicht" umsetzen. Die simpelste Methode die mir einfiele , ist das du den Helden unsichtbar machst und an seinen Koordinaten ein Bild anzeigst. Dadurch sieht der Spieler wohin das Objekt hin soll. Sobald er Enter drückt, speicherst du die aktuelle Heldenkoordinaten ab. Das ist nun die obere linke Ecke des Objekts.

Ich versuch es mal zu visualisieren:


12
34 <- Unser Objekt

H <- Held der unsichtbar nun die obere linke Ecke darstellt

Wir teleportieren nun von unserem 4 Events großen Objekt erstmal Event Nummer 1 an die Position des Helden. Den Held sollten wir da vorher natürlich wegräumen. Nun haben wir Event 1 an der richtigen Position stehen. Wir holen uns nun die X Koordinate des Event 1 und addieren eins drauf. Damit haben wir die Koordinate des Nachbarfeldes. Für die zwei darunterliegenden Felder muss auch nur jewals auf die Y Koordinaten von Event 1 und Event 2 jewals eins draufaddieren. Ich denk es wird klar was ich zeigen will.

Mag kompliziert klingen, ist aber an sich nur ein wenig Rechnerei mit Koordinaten. Mit dem Helden als "Cursor" hast du dann auch gleich die Sache das das Eventgrid vom Maker eingehalten wird.

Corti
12.11.2009, 09:16
Für die Speicherung der Daten könnte man pro Feld eine Variable nehmen und das ganze Quasi als in ein Array ausgefaltete Matrix speichern.

Beispiel:
4 * 3 große Map

---> X-Achse

X1 X2 X3 X4 |
Y1 Y2 Y3 Y4 |
Z1 Z2 Z3 Z4 v Y-Achse

In Variablen dann
v[0021]X1
v[0022]X2
v[0023]X3
v[0024]X4
v[0025]Y1
v[0026]Y2
v[0027]Y3
v[0028]Y4
v[0029]Z1
v[0030]Z2
v[0031]Z3
v[0032]Z4

Die Formel wäre dann

X + (Y-1)*4 + 20

Y3 hat X = 3 Y = 2

3 + (2-1)*4 + 20 = 27 (check^^)

Karl
12.11.2009, 15:02
Ist das mit Variablen in Form von Achsenberechnung wirklich schlanker und unkomplizierter als mit Events?

makenshi
12.11.2009, 16:49
Ich frage mich auch wozu du die Koordinaten der Gegenstände dauerhaft abspeichern willst Corti. :o Ist doch an sich nicht nötig. Oder meinst du etwas anderes?

lordkrinito
13.11.2009, 12:41
natürlich sollen die variablen der gegenstände gespeichert werden, sonst wäre ja jedesmal wenn man den raum verlässt alles wieder weg...

Corti
13.11.2009, 13:23
Ich frage mich auch wozu du die Koordinaten der Gegenstände dauerhaft abspeichern willst Corti. :o Ist doch an sich nicht nötig. Oder meinst du etwas anderes?
Ich ging davon aus, dass man ein Haus einrichtet, um es nachher wieder genau so personalisiert vorzufinden.

makenshi
13.11.2009, 17:38
Stimmt. Wäre ne Idee. *hand vor den kopf schlag* :)
Bei mir im Kopf war wohl nur ein temporäres Modell der Sache.

Rinober
14.11.2009, 12:14
Wenn ich das so betrachte, wäre makenshis Methode wohl die Einfachste und Praktischste. Nach dem Einrichten von Möbeln kann ich dann ja einfach deren X/Y Koordinaten speichern und sie beim nächsten Besuch des Hauses wieder an diese Koordinaten platzieren.
Danke für diesen Vorschlag :)

Auch danke an Corti, aber ich bin schlecht in Mathe und versteh deine Formel nicht xD