feat: implement game logic
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
from star_resonance_tracer.proto.enum_chit_chat_msg_type_pb2 import ChitChatMsgType
|
||||
from star_resonance_tracer.proto.stru_place_holder_item_pb2 import PlaceHolderItem
|
||||
from star_resonance_tracer.sniffer import Sniffer
|
||||
|
||||
from inventory_wars.const import ChitChatNtf, decode_placeholder, HypertextVariant
|
||||
from inventory_wars.sniffer import start_sniffing
|
||||
from star_resonance_tracer.proto.serv_chit_chat_ntf_pb2 import ChitChatNtf as ChitChatNtfPb
|
||||
|
||||
|
||||
def on_chit_chat_msg(event: ChitChatNtfPb.NotifyNewestChitChatMsgs) -> None:
|
||||
req = event.vRequest
|
||||
|
||||
if req.chatMsg.msgInfo.msgType is not ChitChatMsgType.ChatMsgHypertext:
|
||||
return
|
||||
|
||||
hypertext = req.chatMsg.msgInfo.chatHypertext
|
||||
if hypertext.configId != HypertextVariant.ITEM_SHARING.value:
|
||||
return
|
||||
|
||||
for placeholder in hypertext.hypertextContents:
|
||||
placeholder_content = decode_placeholder(placeholder)
|
||||
match placeholder_content:
|
||||
case PlaceHolderItem() as item:
|
||||
print(item)
|
||||
|
||||
|
||||
|
||||
sniffer = Sniffer()
|
||||
sniffer.set_service_type(
|
||||
ChitChatNtf.ServiceId.value,
|
||||
ChitChatNtf.Method.NotifyNewestChitChatMsgs.value,
|
||||
ChitChatNtfPb.NotifyNewestChitChatMsgs
|
||||
)
|
||||
sniffer.on_service(ChitChatNtfPb.NotifyNewestChitChatMsgs, on_chit_chat_msg)
|
||||
|
||||
start_sniffing(sniffer)
|
||||
Reference in New Issue
Block a user