Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Game Maker Domäne. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

icqgamer

Gargoyle

  • »icqgamer« ist der Autor dieses Themas

Beiträge: 262

Danksagungen: 2

  • Private Nachricht senden

1

Montag, 15. Juni 2009, 17:05

Ein zweites Object soll mit der View "mitgehen"

Hallo.
Ich hab ein kleines Problemchen.
Ich habe ein Object ( Den Player ) und noch ein Object, der das Lv,HP usw. zeichnen soll.
Der Raum ist nun aber 32.000x32.000 groß und deshalb benötige ich eine View. Das allerdings ist nicht mein Problem.
Wenn ich mein Spieler Object nach rechts bewege, geht zwar der Spieler nach links und die View geht auch weiter nach links, aber dann sieht man den Status nichtmehr ( Also die HP usw. )

Ich habe schon im Forum wie ein Verrückter rumgesucht und leider nichts gefunden.
Selber ausprobiert hab ich es auch, aber leider ohne Erfolg.

Ich hoffe jemand weiß eine simple Lösung auf das Problem.

Mit freundlichem Gruß
icqgamer

TrunX

***Katzengold***

Beiträge: 1 624

Game Maker Version: 6 registriert

Selbsteinschätzung: GML Fortgeschrittener

  • Private Nachricht senden

2

Montag, 15. Juni 2009, 17:12

Entweder passt du die Position des Objekts an die des views an oder du zeichnest direkt abhängig von den view Koordinaten.
view_xview gibt zb. die x koordinate des ersten views wieder.


icqgamer

Gargoyle

  • »icqgamer« ist der Autor dieses Themas

Beiträge: 262

Danksagungen: 2

  • Private Nachricht senden

3

Montag, 15. Juni 2009, 17:28

Wollte ich auch.
Sowas ist in meinen Kopf schon rumgeschlummert, aber ich habe völlig vergessen wie ich das schreiben soll.
Ich habe das nun so:

GML

1
2
3
4
5
draw_text(view_xview,view_yview,"Text#Text#Text")
// Dann wird angezeigt:
// Text
// Text
// Text


Aber wenn ich jetzt zu nah ans Raumende komme, geht der Text auch mit raus, so dass man ihn nichtmehr so gut sehen kann.

Was nun?

Und: Danke für die schnelle Antwort :)

Mit freundlichem Gruß
icqgamer

TrunX

***Katzengold***

Beiträge: 1 624

Game Maker Version: 6 registriert

Selbsteinschätzung: GML Fortgeschrittener

  • Private Nachricht senden

4

Montag, 15. Juni 2009, 18:03

Merkwürdig, sofern nicht der ganze view auch über den Rand hinaus geht, soltle das eigentlich nicht passieren.
Kleine Symptombekämpfung fürn stepevent:

GML

1
2
3
4
5
6
7
8
if view_xview<0
view_xview=0
eles if view_xview>room_width
view_xview=room_width
if view_yview<0
view_yview=0
else if view_yview>room_height
view_yview=room_height


Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

5

Montag, 15. Juni 2009, 18:12

Hi, hab ne andere Möglichkeit, lass einfach deine Healthbar von deinem Spielerobjekt drawen, so läuft sie automatisch mit, hier ein example:

Klicken für Download
Gruß Gamer

icqgamer

Gargoyle

  • »icqgamer« ist der Autor dieses Themas

Beiträge: 262

Danksagungen: 2

  • Private Nachricht senden

6

Montag, 15. Juni 2009, 18:19

Ich habe mal ein Screen gemacht wie es aussieht.
Ich habe nun im Step Event:

GML

1
2
3
4
5
6
7
8
if view_xview<0
view_xview=0
else if view_xview>room_width
view_xview=room_width
if view_yview<0
view_yview=0
else if view_yview>room_height
view_yview=room_height


Und im Draw Event:

GML

1
2
draw_background(Back_Lv,view_xview,view_yview)
draw_text(view_xview,view_yview, "Blablabla")


Und so siehts aus: ( Draufklicken um zu vergrößern )





Edit:
Hi, hab ne andere Möglichkeit, lass einfach deine Healthbar von deinem Spielerobjekt drawen, so läuft sie automatisch mit, hier ein example:
Ja, aber ich möchte ja keine Healthbar, sondern HP,MP,Lv usw und dazu muss ich die Strings in draw_text eintragen.

Mit freundlichem Gruß
icqgamer

copyboy

Krankhafter Individualist

Beiträge: 2 046

Selbsteinschätzung: GML Experte

  • Private Nachricht senden

7

Montag, 15. Juni 2009, 18:30

Versuch es so:

GML

1
2
3
4
x = max(0,min(room_width-view_wview,view_xview));
y = max(0,min(room_height-view_hview,view_yview));
draw_background(Back_Lv,x,y);
draw_text(x,y,"Blablabla");

icqgamer

Gargoyle

  • »icqgamer« ist der Autor dieses Themas

Beiträge: 262

Danksagungen: 2

  • Private Nachricht senden

8

Montag, 15. Juni 2009, 18:34

Ersteinmal danke an alle, die helfen.
Die 2. Sache ist dann noch, das es immernoch so ist wie am Anfang :P

Mit freundlichem Gruß
icqgamer

anti0ogen blau

unregistriert

9

Montag, 15. Juni 2009, 18:40

na das object das die hp usw für den spieler drawen soll nimmt eben positionen relativ zum spieler, also zB spieler.x,spieler.y-20

sowas in der art, wo is dann das problem? das zweite object kann außerhalb der view sien sogar außerhalb des rooms hauptasche es drawt bei spieler.x und spieler.y

icqgamer

Gargoyle

  • »icqgamer« ist der Autor dieses Themas

Beiträge: 262

Danksagungen: 2

  • Private Nachricht senden

10

Montag, 15. Juni 2009, 18:42

Jop.
Könnte auch außerhalb des Raums sein, aber sieht nicht so schön aus.
Es soll ja ein Online Game werden und da darf sowas nicht passieren, denn jeder kleinste Fehler ist auch ein Fehler und wird von anderen Spielern mitbeachtet.
Einige nervt's und einige merkens nicht, aber um dann wegen soeinen Fehler Stress zu vermeiden, lieber gleich richtig machen :D


Edit:

Man wird's nicht glauben, aber ich ahtte die ganze Zeit das falsche Object im Raum! xD
Ich denke alle Methoden würden klappen, wenn ich nur das richtige Object drin hätte!

Dankesehr für die Hilfe!

Mit freundlichem Gruß
icqgamer

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »icqgamer« (15. Juni 2009, 18:59)


Beiträge: 931

Game Maker Version: 7 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: Station Omega (Weltraumshooter)

  • Private Nachricht senden

11

Montag, 15. Juni 2009, 20:05

ja eben, hätt mich auch gewundert.
Weil bei meiner Methode könntest ja auch mehrere Sachen drawen lassen, das ist ja nicht das Problem
Gruß Gamer

Ähnliche Themen