summaryrefslogtreecommitdiff
path: root/src/game-server/gamehandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game-server/gamehandler.cpp')
-rw-r--r--src/game-server/gamehandler.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/game-server/gamehandler.cpp b/src/game-server/gamehandler.cpp
index eeccdcc5..51b64a26 100644
--- a/src/game-server/gamehandler.cpp
+++ b/src/game-server/gamehandler.cpp
@@ -453,22 +453,25 @@ void GameHandler::handleNpc(GameClient &client, MessageIn &message)
return;
}
- NPC *npc = static_cast<NPC *>(actor);
+ Being *npc = static_cast<Being*>(actor);
+
switch (message.getId())
{
case PGMSG_NPC_SELECT:
- npc->select(client.character, message.readInt8());
+ Npc::integerReceived(client.character, message.readInt8());
break;
case PGMSG_NPC_NUMBER:
- npc->integerReceived(client.character, message.readInt32());
+ Npc::integerReceived(client.character, message.readInt32());
break;
case PGMSG_NPC_STRING:
- npc->stringReceived(client.character, message.readString());
+ Npc::stringReceived(client.character, message.readString());
break;
case PGMSG_NPC_TALK:
+ Npc::start(npc, client.character);
+ break;
case PGMSG_NPC_TALK_NEXT:
default:
- npc->prompt(client.character, message.getId() == PGMSG_NPC_TALK);
+ Npc::resume(client.character);
break;
}
}