Gameobject Core (C++) Edit: Frage

Huhu,

ich möchte 3 verschiedene gameobject Tabellen machen die alle in die Welt geladen werden, aber z.B. die Gameobjects eines users mit GMLevel in Tabelle 1 kommen und ein User mit GMLevel 2 in Tabelle 2.

Soweit so gut, mein Problem ist, dass ich nicht die datei finde wo die Gameobjects in die Datenbank geschrieben werden, also wo z.B. der Table angegeben wird, kann mir da wer helfen?

Dann kannst du eher die Gameobject_Template (bzw. Gameobject) um eine Spalte erweitern und definieren, dass man ein gewisses Level braucht, um diese editieren zu können.

Unteranderem Worlddatabase für die SQL. Ansonsten cs_gobject mit allen FUnktionen.

EDIT:

Genaugenommen wäre es mit Gameobject sogar einfacher. Dann könntest du noch einen Befehl hinzufügen, womit du das Objekt vom Level auch verändern kannst.

Wenn ich dich richtig versteh möchtest du, dass nur bestimmte Gameobjecte für bestimmte Security Level sichbar sind?

Das würde nämlich mit Phasen einfacher gehen.

Hier brauchts erst mal mehr Infos darüber, was mit dem Ganzen bezeckt werden soll. Das mit dem Schreiben in unterschiedliche Tabellen dürfte kein großes Hinderniss sein (Stichwort: Object->SaveToDB). Allerdings sollen die wohl später auch wieder geladen werden, würde ich annehmen und dafür müsste dann auch noch das Laden aus der DB heraus entsprechend geändert werden.

Huhu,

ja hab ich schon hinbekommen, nun häng ich aber leider an dem punkt wo ich weitere tabellen laden kann (z.B. gameobject_team), gibts da eine einfach möglichkeit? wenn ich es bei void ObjectMgr::LoadGameobjects() ändere sagt er mir das er das gameobject.guid feld nicht findet, klar das gibt es auch nicht aber in der normalen gameobject tabelle auch nicht und da geht es /emoticons/default_biggrin.png

old:

QueryResult result = WorldDatabase.Query("SELECT gameobject.guid, id, map, position_x, position_y, position_z, orientation, "
"rotation0, rotation1, rotation2, rotation3, spawntimesecs, animprogress, state, spawnMask, phaseMask, eventEntry, pool_entry "
"FROM gameobject LEFT OUTER JOIN game_event_gameobject ON gameobject.guid = game_event_gameobject.guid "
“LEFT OUTER JOIN pool_gameobject ON gameobject.guid = pool_gameobject.guid”);

new:

QueryResult result = WorldDatabase.Query("SELECT gameobject.guid, id, map, position_x, position_y, position_z, orientation, "
    "rotation0, rotation1, rotation2, rotation3, spawntimesecs, animprogress, state, spawnMask, phaseMask, eventEntry, pool_entry "
    "FROM gameobject_team LEFT OUTER JOIN game_event_gameobject ON gameobject.guid = game_event_gameobject.guid "
    "LEFT OUTER JOIN pool_gameobject ON gameobject.guid = pool_gameobject.guid");

und das “new” funktioniert nicht…

#closed. Habs hinbekommen.