JavaScript Variable Nachträglich verändern

iGDark

Lt. Junior Grade
Dabei seit
Sep. 2005
Beiträge
305
Hi,

ich habe ein kleines Problem in meinem Browsergame.

Also in dem Game hat man einen Charakter (der hat einen HP-Stand). Dieser Charakter hat auch eine tasche. Die Gegenstände zwischen Charakter und Tasche werden per Drag&Drop ausgetauscht (visuell) und im Hintergrund speicher ich mit AJAX den verschiebevorgang ab, so dass es auch in der Datenbank steht.
Jetzt gibt es aber Gegenstände die +Ausdauer bringen, was die HP-Zahl erhöht. Wenn der Charakter sie anlegt, funktioniert das auch alles, aber im HP-Balken sieht man die Auswirkung erst, wenn man die Seite einmal akutallisiert hat.

Dieser HP-Balken funktioniert auch per JavaScript (läuft automatisch wieder voll). Dafür habe ich eine Funktion die sekündlich aufgerufen wird und den HP-Stand hochzählt. Dabei übergebe ich die Regenerationsrate und die maximalen HP die der spieler haben kann. Wenn der spieler die seite lädt übergebe ich diese maximalen HP über PHP

HTML:
<script type...>
var max_hp=<? echo $maximale_hp?>;
</script>
Wenn der Spieler jetzt einen Gegenstand anzieht der ihm ausdauer bringt, dann wird diese variable also erst beim neu laden umgeschrieben. ist es möglich, diese variable auch innerhalb meines AJAX-Scriptes zu aktualisieren damit der maximale HP-Stand manipuliert wird, ohne das die Seite neu geladen wird?
 
Zuletzt bearbeitet:

DerEineDa

Lieutenant
Dabei seit
Juni 2003
Beiträge
999
Mach doch die Variable global, so dass sie durch ein anderes Skript noch geändert werden kann.
 
Zuletzt bearbeitet:

iGDark

Lt. Junior Grade
Ersteller dieses Themas
Dabei seit
Sep. 2005
Beiträge
305
global ok, aber lässt sie sich auch tatsächlich live ändern? dieses ajax-script wird immerhin am server umgesetzt, und nicht auf dem client. der client würde davon doch dann nichts mitbekommen oder?
 

DerEineDa

Lieutenant
Dabei seit
Juni 2003
Beiträge
999
Ein AJAX-Skript ist ein gewöhnliches JS-Skript, das beim Client ausgeführt wird. Es kann eben nur schönerweise Daten mit einem Server austauschen, ohne dass alles neu geladen werden müsste. Ich sehe da kein Problem.
 

iGDark

Lt. Junior Grade
Ersteller dieses Themas
Dabei seit
Sep. 2005
Beiträge
305
mhhh...ich muss mir das alles nochmal durchguggen ...n ansatz ist es schon :)
aber das script das auf dem server aufgerufen wird und die datenbankeinträge ändert. das kann es nicht denk ich :)
 

DerEineDa

Lieutenant
Dabei seit
Juni 2003
Beiträge
999
Ja richtig. Aber das Server-Skript zur DB-Änderung muss ja irgendwo aufgerufen werden :) Und das wird ja wohl JavaScript sein. Und da würde ich anpacken.
 

iGDark

Lt. Junior Grade
Ersteller dieses Themas
Dabei seit
Sep. 2005
Beiträge
305
so habs mal kurz probiert, an der stelle kann ich den wert manipulieren ;-)

fragt sich nur noch....wie ich an der stelle auch die ausdauer des jeweiligen gegenstands rausbringe ^^
 
Top