Hi there, bin mich grade etwas an C++ Rantasten, wenn man ein wenig googelt, wie Vererbung und Assoziationen und der ganze Stuff aussieht funktioniert's sogar einigermaßen, leider ist der Sourcecode ziemlich Umfangreich und Teilweise ist auch Stuff dabei, den ich nie verstanden hab', wie z.B. Abstrakte Klassen.
Derzeit versuche ich - 'ne Questfunc zu schreiben, welche die X/Y-Koordinate eines Dungeon-Unique-Monsters ausgibt, für... diversen übergeilen Stuff. Momentan sieht das ganze so aus:
Problem hierbei -> die Funktionen "GetX()" und "GetY()" sind innerhalb der Klasse "CEntity".
Die Idee war's, die Funktionen an CDungeon zu vererben, CDungeon ist allerdings eine Abstrakte Klasse, anders wie bei CHARACTER, wo der Funktionsaufruf ohne Probleme Funktioniert.
Bisher hab' ichs also nur hinbekommen, die Koordinaten eines NPCs auszugeben, jedoch nicht die eines Monsters, ich wäre 100x Dankbar, wenn mich da wer ein wenig Guiden könnte :D
Mfg Dyshaxo =)
Derzeit versuche ich - 'ne Questfunc zu schreiben, welche die X/Y-Koordinate eines Dungeon-Unique-Monsters ausgibt, für... diversen übergeilen Stuff. Momentan sieht das ganze so aus:
Code:
int dungeon_unique_get_x_pos(lua_State* L)
{
if (!lua_isstring(L,1))
{
lua_pushnumber(L,0);
return 1;
}
CQuestManager& q = CQuestManager::instance();
LPDUNGEON pDungeon = q.GetCurrentDungeon();
LPSECTREE_MAP pMap = SECTREE_MANAGER::instance().GetMap(pDungeon->GetMapIndex());
if (pDungeon)
{
if (pMap)
lua_pushnumber(L, (pDungeon->GetX() - pMap->m_setting.iBaseX) /100);
else
lua_pushnumber(L, pDungeon->GetX() / 100);
return 1;
}
}
int dungeon_unique_get_y_pos(lua_State* L)
{
if (!lua_isstring(L,1))
{
lua_pushnumber(L,0);
return 1;
}
CQuestManager& q = CQuestManager::instance();
LPDUNGEON pDungeon = q.GetCurrentDungeon();
LPSECTREE_MAP pMap = SECTREE_MANAGER::instance().GetMap(pDungeon->GetMapIndex());
if (pDungeon)
{
if (pMap)
lua_pushnumber(L, (pDungeon->GetY() - pMap->m_setting.iBaseX) /100);
else
lua_pushnumber(L, pDungeon->GetY() / 100);
return 1;
}
}
Die Idee war's, die Funktionen an CDungeon zu vererben, CDungeon ist allerdings eine Abstrakte Klasse, anders wie bei CHARACTER, wo der Funktionsaufruf ohne Probleme Funktioniert.
Bisher hab' ichs also nur hinbekommen, die Koordinaten eines NPCs auszugeben, jedoch nicht die eines Monsters, ich wäre 100x Dankbar, wenn mich da wer ein wenig Guiden könnte :D
Mfg Dyshaxo =)