update
This commit is contained in:
@@ -92,6 +92,29 @@ defmodule Odinsea.Channel.Client do
|
||||
cp_magic_attack = Opcodes.cp_magic_attack()
|
||||
cp_take_damage = Opcodes.cp_take_damage()
|
||||
|
||||
# Inventory opcodes
|
||||
cp_item_move = Opcodes.cp_item_move()
|
||||
cp_item_sort = Opcodes.cp_item_sort()
|
||||
cp_item_gather = Opcodes.cp_item_gather()
|
||||
cp_use_item = Opcodes.cp_use_item()
|
||||
cp_use_return_scroll = Opcodes.cp_use_return_scroll()
|
||||
cp_use_scroll = Opcodes.cp_use_upgrade_scroll()
|
||||
cp_use_cash_item = Opcodes.cp_use_cash_item()
|
||||
|
||||
# NPC opcodes
|
||||
cp_npc_move = Opcodes.cp_npc_move()
|
||||
cp_npc_talk = Opcodes.cp_npc_talk()
|
||||
cp_npc_talk_more = Opcodes.cp_npc_talk_more()
|
||||
cp_npc_shop = Opcodes.cp_npc_shop()
|
||||
cp_storage = Opcodes.cp_storage()
|
||||
cp_quest_action = Opcodes.cp_quest_action()
|
||||
cp_repair = Opcodes.cp_repair()
|
||||
cp_repair_all = Opcodes.cp_repair_all()
|
||||
cp_update_quest = Opcodes.cp_update_quest()
|
||||
cp_use_item_quest = Opcodes.cp_use_item_quest()
|
||||
cp_public_npc = Opcodes.cp_public_npc()
|
||||
cp_use_scripted_npc_item = Opcodes.cp_use_scripted_npc_item()
|
||||
|
||||
case opcode do
|
||||
# Chat handlers
|
||||
^cp_general_chat ->
|
||||
@@ -162,6 +185,98 @@ defmodule Odinsea.Channel.Client do
|
||||
_ -> state
|
||||
end
|
||||
|
||||
# Inventory handlers
|
||||
^cp_item_move ->
|
||||
case Handler.Inventory.handle_item_move(packet, state) do
|
||||
{:ok, new_state} -> new_state
|
||||
_ -> state
|
||||
end
|
||||
|
||||
^cp_item_sort ->
|
||||
case Handler.Inventory.handle_item_sort(packet, state) do
|
||||
{:ok, new_state} -> new_state
|
||||
_ -> state
|
||||
end
|
||||
|
||||
^cp_item_gather ->
|
||||
case Handler.Inventory.handle_item_gather(packet, state) do
|
||||
{:ok, new_state} -> new_state
|
||||
_ -> state
|
||||
end
|
||||
|
||||
^cp_use_item ->
|
||||
case Handler.Inventory.handle_use_item(packet, state) do
|
||||
{:ok, new_state} -> new_state
|
||||
_ -> state
|
||||
end
|
||||
|
||||
^cp_use_return_scroll ->
|
||||
case Handler.Inventory.handle_use_return_scroll(packet, state) do
|
||||
{:ok, new_state} -> new_state
|
||||
_ -> state
|
||||
end
|
||||
|
||||
^cp_use_scroll ->
|
||||
case Handler.Inventory.handle_use_scroll(packet, state) do
|
||||
{:ok, new_state} -> new_state
|
||||
_ -> state
|
||||
end
|
||||
|
||||
^cp_use_cash_item ->
|
||||
case Handler.Inventory.handle_use_cash_item(packet, state) do
|
||||
{:ok, new_state} -> new_state
|
||||
_ -> state
|
||||
end
|
||||
|
||||
# NPC handlers
|
||||
^cp_npc_move ->
|
||||
Handler.NPC.handle_npc_move(packet, self())
|
||||
state
|
||||
|
||||
^cp_npc_talk ->
|
||||
Handler.NPC.handle_npc_talk(packet, self())
|
||||
state
|
||||
|
||||
^cp_npc_talk_more ->
|
||||
Handler.NPC.handle_npc_more_talk(packet, self())
|
||||
state
|
||||
|
||||
^cp_npc_shop ->
|
||||
Handler.NPC.handle_npc_shop(packet, self())
|
||||
state
|
||||
|
||||
^cp_storage ->
|
||||
Handler.NPC.handle_storage(packet, self())
|
||||
state
|
||||
|
||||
^cp_quest_action ->
|
||||
Handler.NPC.handle_quest_action(packet, self())
|
||||
state
|
||||
|
||||
^cp_repair ->
|
||||
Handler.NPC.handle_repair(packet, self())
|
||||
state
|
||||
|
||||
^cp_repair_all ->
|
||||
Handler.NPC.handle_repair_all(self())
|
||||
state
|
||||
|
||||
^cp_update_quest ->
|
||||
Handler.NPC.handle_update_quest(packet, self())
|
||||
state
|
||||
|
||||
^cp_use_item_quest ->
|
||||
Handler.NPC.handle_use_item_quest(packet, self())
|
||||
state
|
||||
|
||||
^cp_public_npc ->
|
||||
Handler.NPC.handle_public_npc(packet, self())
|
||||
state
|
||||
|
||||
^cp_use_scripted_npc_item ->
|
||||
Handler.NPC.handle_use_scripted_npc_item(packet, self())
|
||||
state
|
||||
|
||||
_ ->
|
||||
Logger.debug("Unhandled channel opcode: 0x#{Integer.to_string(opcode, 16)}")
|
||||
state
|
||||
|
||||
Reference in New Issue
Block a user