SHOW:
|
|
- or go back to the newest paste.
1 | ||
2 | //somewhere in pickup.cpp | |
3 | if(pChr && pChr->IsAlive()) | |
4 | { | |
5 | // player picked us up, is someone was hooking us, let them go | |
6 | int RespawnTime = -1; | |
7 | switch (m_Type) | |
8 | { | |
9 | case POWERUP_HEALTH: | |
10 | if(m_Subtype != TILE_QUEST_TARGET) | |
11 | { | |
12 | if(pChr->IncreaseHealth(1)) | |
13 | { | |
14 | GameServer()->CreateSound(m_Pos, SOUND_PICKUP_HEALTH); | |
15 | RespawnTime = g_pData->m_aPickups[m_Type].m_Respawntime; | |
16 | } | |
17 | } | |
18 | else | |
19 | { | |
20 | if(GameServer()->Collision()->CalcEntityPos(GameServer()->City()->questX[pChr->GetPlayer()->GetCID()], GameServer()->City()->questY[pChr->GetPlayer()->GetCID()]) == m_Pos) | |
21 | { | |
22 | GameServer()->City()->quest_rew[pChr->GetPlayer()->GetCID()] = true; | |
23 | GameServer()->City()->quest_proc[pChr->GetPlayer()->GetCID()] = false; | |
24 | pChr->SetEmote(EMOTE_HAPPY, Server()->Tick() + Server()->TickSpeed()); | |
25 | GameWorld()->DestroyEntity(this); | |
26 | ||
27 | GameServer()->CreateSound(m_Pos, SOUND_PLAYER_SPAWN); | |
28 | } | |
29 | } | |
30 | break; | |
31 | } | |
32 | - | } |
32 | + | } |
33 | /* ... */ | |
34 | ||
35 | for(int i = 0; i<16; i++) | |
36 | { | |
37 | if(!GameServer()->City()->logged[i] && GameServer()->City()->quest_proc[i]) | |
38 | { | |
39 | m_Pos = GameServer()->Collision()->CalcEntityPos(GameServer()->City()->questX[i], GameServer()->City()->questY[i]); | |
40 | m_Type = POWERUP_HEALTH; | |
41 | m_Subtype = TILE_QUEST_TARGET; | |
42 | GameWorld()->DestroyEntity(this); // remove entity | |
43 | ||
44 | char Buf[126]; | |
45 | str_format(Buf, sizeof(Buf), "Destroyed quest entity, player ID: %d.", i); | |
46 | GameServer()->SendChatTarget(-1, Buf); | |
47 | ||
48 | GameServer()->City()->quest_proc[i] = false; | |
49 | } | |
50 | } |