bool GossipHello(Player* player) override { if (EventBegun) return false; uint32 AnetheronEvent = GetInstanceData(DATA_ANETHERONEVENT); // Only let them start the Horde phases if Anetheron is dead. if (AnetheronEvent == DONE && GetInstanceData(DATA_ALLIANCE_RETREAT)) { uint32 KazrogalEvent = GetInstanceData(DATA_KAZROGALEVENT); uint32 AzgalorEvent = GetInstanceData(DATA_AZGALOREVENT); if (KazrogalEvent == NOT_STARTED) AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_BEGIN_HORDE, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); else if (KazrogalEvent == DONE && AzgalorEvent == NOT_STARTED) AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_AZGALOR, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2); else if (AzgalorEvent == DONE) AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_RETREAT, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3); } if (player->IsGameMaster()) AddGossipItemFor(player, GOSSIP_ICON_TRAINER, GOSSIP_ITEM_GM1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF); SendGossipMenuFor(player, 907, me->GetGUID()); return true; }
void OnGameObjectPushToWorld(GameObject* pGameObject) { // Gos which are not visible by killing a boss needs a second check... if (GetInstanceData(Data_EncounterState, CN_LORD_MARROWGAR) == State_Finished) { AddGameObjectStateByEntry(GO_MARROWGAR_ICEWALL_1, State_Active); // Icewall 1 AddGameObjectStateByEntry(GO_MARROWGAR_ICEWALL_2, State_Active); // Icewall 2 AddGameObjectStateByEntry(GO_MARROWGAR_DOOR, State_Active); // Door } }
bool GossipHello(Player* player) override { uint32 AzgalorEvent = GetInstanceData(DATA_AZGALOREVENT); // Only let them get item if Azgalor is dead. if (AzgalorEvent == DONE && !player->HasItemCount(ITEM_TEAR_OF_GODDESS)) AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_TYRANDE, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF); SendGossipMenuFor(player, 907, me->GetGUID()); return true; }
int PASCAL WinMain( HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show ) { char buffer[PATH_MAX]; #if !defined( __WATCOMC__ ) && defined( __NT__ ) _argc = __argc; _argv = __argv; #endif EXEName = _cmdname( buffer ); InstanceHandle = inst; showHow = show; prev = prev; cmdline = cmdline; InitMem(); #ifdef __WINDOWS__ if( prev != NULL && !HasShare() ) { MessageBox( NULLHANDLE, "SHARE.EXE must be loaded before starting Windows in order to run multiple instances of the editor", EditorName, MB_OK ); GetInstanceData( prev, (unsigned char _NEAR *)&Root, sizeof( Root ) ); SetFocus( Root ); return( 0 ); } #endif Comspec = getenv( "COMSPEC" ); #ifdef __WINDOWS__ VarAddGlobalStr( "OS", "win" ); #else VarAddGlobalStr( "OS", "winnt" ); #endif SetConfigFileName( CFG_NAME ); ReadProfile(); ShowStartupDialog(); initApplication(); if( !initInstance() ) { return( 0 ); } InitializeEditor(); SetSaveConfig(); if( !BAD_ID( CurrentWindow ) ) { SetFocus( Root ); } SetWindowCursorForReal(); ResizeRoot(); EditMain(); FiniMem(); return( 0 ); } /* WinMain */
bool GossipHello(Player* player) override { if (EventBegun) return false; uint32 RageEncounter = GetInstanceData(DATA_RAGEWINTERCHILLEVENT); uint32 AnetheronEncounter = GetInstanceData(DATA_ANETHERONEVENT); if (RageEncounter == NOT_STARTED) AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_BEGIN_ALLY, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); else if (RageEncounter == DONE && AnetheronEncounter == NOT_STARTED) AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_ANETHERON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2); else if (RageEncounter == DONE && AnetheronEncounter == DONE) AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_RETREAT, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3); if (player->IsGameMaster()) AddGossipItemFor(player, GOSSIP_ICON_TRAINER, GOSSIP_ITEM_GM1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF); SendGossipMenuFor(player, 907, me->GetGUID()); return true; }
/* * MyGetInstanceData - The header file defn for GetInstanceData is WRONG, * so we do it here */ int MyGetInstanceData( unsigned short p1, char __near *p2, short p3 ) { return( GetInstanceData( p1, p2, p3 ) ); }
void InitAdded(HINSTANCE hPrevInstance) { // get the results of the initialization of first instance GetInstanceData(hPrevInstance, (BYTE*) &SetUpData, sizeof(SETUPDATA)); } // end of InitAdded()
int GetIData( HINSTANCE inst, void near *data, unsigned int size ) { return( GetInstanceData( inst, data, size ) ); }