观战退出同步

master
罗家炜 2025-09-09 16:55:41 +08:00
parent b1b799045d
commit 3522b980a4
8 changed files with 81 additions and 39 deletions

View File

@ -692,7 +692,7 @@ function M:OnEvtEnterWitness(msg)
end end
function M:OnEvtExieWitness(msg) function M:OnEvtExieWitness(msg)
DispatchEvent(self._dispatcher, GameEvent.WitnessPlayerLeave, msg.playyer) DispatchEvent(self._dispatcher, GameEvent.WitnessPlayerLeave, msg.player)
end end
function M:OnEventFzAction(msg) function M:OnEventFzAction(msg)

View File

@ -915,22 +915,7 @@ function M:EventInit()
_gamectr:AddEventListener(GameEvent.WitnessPlayerEnter, handler(self, self.OnPlayerWitnessEnter)) _gamectr:AddEventListener(GameEvent.WitnessPlayerEnter, handler(self, self.OnPlayerWitnessEnter))
_gamectr:AddEventListener( _gamectr:AddEventListener(GameEvent.WitnessPlayerLeave, handler(self, self.OnPlayerWitnessLeave))
GameEvent.WitnessPlayerLeave,
function(...)
-- print("刷新托管数据=====")
local arg = { ... }
local player = arg[1]
local witnessPlayerList = _room.witness_player_list
for i, _player in ipairs(witnessPlayerList) do
if _player.uid == player then
table.remove(witnessPlayerList, i)
return
end
end
_room._flag_updateWitness = true
end
)
_gamectr:AddEventListener(GameEvent.HOMESTATE, function(...) _gamectr:AddEventListener(GameEvent.HOMESTATE, function(...)
local arg = { ... } local arg = { ... }
@ -1037,6 +1022,19 @@ function M:OnPlayerWitnessEnter(...)
self._room.witness_player_list = witnessPlayerList self._room.witness_player_list = witnessPlayerList
end end
function M:OnPlayerWitnessLeave(...)
---- print("刷新托管数据=====")
local arg = { ... }
local player = arg[1]
local witnessPlayerList = self._room.witness_player_list
for i, _player in ipairs(witnessPlayerList) do
if _player.uid == player then
table.remove(witnessPlayerList, i)
return
end
end
end
function M:OnPlayerEnter(...) function M:OnPlayerEnter(...)
printlog("进入房间222222222222222222++++++++++++++++++++++++++++") printlog("进入房间222222222222222222++++++++++++++++++++++++++++")
local arg = { ... } local arg = { ... }

View File

@ -169,6 +169,28 @@ function M:EventInit()
end end
end) end)
_gamectr:AddEventListener(GameEvent.WitnessPlayerLeave, function(...)
---- print("刷新托管数据=====")
local arg = { ... }
local player = arg[1]
local witnessPlayerList = self._room.witness_player_list
for i, _player in ipairs(witnessPlayerList) do
if _player.aid == player then
table.remove(witnessPlayerList, i)
break
end
end
local _room = DataManager.CurrenRoom
local viewList_witness = self._view:GetChild('comp_witness'):GetChild('list_players')
print("linemng", _room._flag_updateWitness, #_room.witness_player_list, viewList_witness.numItems)
if viewList_witness.numItems == #_room.witness_player_list then
viewList_witness:RefreshVirtualList()
else
viewList_witness.numItems = #_room.witness_player_list
end
end)
_gamectr:AddEventListener(TX_GameEvent.SendLaiZi, function(...) _gamectr:AddEventListener(TX_GameEvent.SendLaiZi, function(...)
local arg = { ... } local arg = { ... }
print("lingmeng witness SendLaiZi") print("lingmeng witness SendLaiZi")

View File

@ -527,6 +527,28 @@ function M:OnPlayerWitnessEnter(...)
end end
end end
function M:OnPlayerWitnessLeave(...)
---- print("刷新托管数据=====")
local arg = { ... }
local player = arg[1]
local witnessPlayerList = self._room.witness_player_list
for i, _player in ipairs(witnessPlayerList) do
if _player.aid == player then
table.remove(witnessPlayerList, i)
break
end
end
local _room = DataManager.CurrenRoom
local viewList_witness = self._view:GetChild('comp_witness'):GetChild('list_players')
print("linemng", _room._flag_updateWitness, #_room.witness_player_list, viewList_witness.numItems)
if viewList_witness.numItems == #_room.witness_player_list then
viewList_witness:RefreshVirtualList()
else
viewList_witness.numItems = #_room.witness_player_list
end
end
function M:CountCardLeftNum(card) function M:CountCardLeftNum(card)
local player_list = DataManager.CurrenRoom.player_list local player_list = DataManager.CurrenRoom.player_list
local count = 4 local count = 4

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<component size="2532,1170" pivot="0.5,0.5" designImage="ui://v0j9abjyj6yy1fr" designImageAlpha="35"> <component size="2532,1170" pivot="0.5,0.5" designImage="ui://v0j9abjyj6yy1fr" designImageAlpha="35">
<controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态,4,观战状态" selected="0"/> <controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态,4,观战状态" selected="4"/>
<controller name="sdk" pages="0,,1," selected="0"/> <controller name="sdk" pages="0,,1," selected="0"/>
<controller name="action" pages="2,空,0,准备,1,开始" selected="0"/> <controller name="action" pages="2,空,0,准备,1,开始" selected="0"/>
<controller name="3d" pages="0,,1," selected="0"/> <controller name="3d" pages="0,,1," selected="0"/>
@ -9,7 +9,7 @@
<controller name="more" pages="0,,1," selected="0"/> <controller name="more" pages="0,,1," selected="0"/>
<controller name="witness" pages="0,,1," selected="0"/> <controller name="witness" pages="0,,1," selected="0"/>
<controller name="voice" pages="0,,1," selected="0"/> <controller name="voice" pages="0,,1," selected="0"/>
<controller name="cHuCardEffect" pages="0,,1," selected="1"> <controller name="cHuCardEffect" pages="0,,1," selected="0">
<remark page="0" value="关"/> <remark page="0" value="关"/>
<remark page="1" value="开"/> <remark page="1" value="开"/>
</controller> </controller>
@ -44,14 +44,14 @@
<gearXY controller="action" pages="2,0,1" values="8808,794|-16242,794|5853,170"/> <gearXY controller="action" pages="2,0,1" values="8808,794|-16242,794|5853,170"/>
<Button icon="ui://v0j9abjygq7m48"/> <Button icon="ui://v0j9abjygq7m48"/>
</component> </component>
<component id="n35_k3io" name="btn_start" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-2742,480" group="n36_k3io" visible="false"> <component id="n35_k3io" name="btn_start" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-2741,480" group="n36_k3io" visible="false">
<Button icon="ui://v0j9abjygq7m49"/> <Button icon="ui://v0j9abjygq7m49"/>
</component> </component>
<component id="n104_mncc" name="btn_xipai--" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-2332,487" group="n36_k3io" scale="0.9,1"> <component id="n104_mncc" name="btn_xipai--" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-2331,487" group="n36_k3io" scale="0.9,1">
<gearDisplay controller="action" pages="1"/> <gearDisplay controller="action" pages="1"/>
<Button icon="ui://v0j9abjygq7m4i"/> <Button icon="ui://v0j9abjygq7m4i"/>
</component> </component>
<group id="n36_k3io" name="n36" xy="-2742,480" size="11817,414" visible="false" advanced="true"> <group id="n36_k3io" name="n36" xy="-2741,480" size="11816,414" visible="false" advanced="true">
<relation target="" sidePair="bottom-bottom,center-center"/> <relation target="" sidePair="bottom-bottom,center-center"/>
</group> </group>
<component id="n69_l2u4" name="gcm_chat" src="gq7m8z" fileName="Main_style_2/Gcm_chat.xml" xy="1933,-505"> <component id="n69_l2u4" name="gcm_chat" src="gq7m8z" fileName="Main_style_2/Gcm_chat.xml" xy="1933,-505">
@ -142,7 +142,7 @@
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<relation target="" sidePair="center-center,bottom-bottom"/> <relation target="" sidePair="center-center,bottom-bottom"/>
</component> </component>
<component id="n141_lu84" name="player_info1_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="730,-60" size="153,132"> <component id="n141_lu84" name="player_info1_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="85,786" size="153,132">
<gearDisplay controller="state" pages="1,3,4"/> <gearDisplay controller="state" pages="1,3,4"/>
<gearXY controller="state" pages="1,3,4" values="87,787|84,778|85,786" default="730,-60"/> <gearXY controller="state" pages="1,3,4" values="87,787|84,778|85,786" default="730,-60"/>
<relation target="n118_pkx5" sidePair="right-left,top-top"/> <relation target="n118_pkx5" sidePair="right-left,top-top"/>
@ -151,9 +151,9 @@
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<relation target="" sidePair="center-center,top-top"/> <relation target="" sidePair="center-center,top-top"/>
</component> </component>
<component id="n152_kxhm" name="player_info2_2" src="o8k813y" fileName="Main_new/Main_new_2/PlayerHead2_2.xml" xy="2701,486" size="153,132"> <component id="n152_kxhm" name="player_info2_2" src="o8k813y" fileName="Main_new/Main_new_2/PlayerHead2_2.xml" xy="1868,34" size="153,132">
<gearDisplay controller="state" pages="1,3,4"/> <gearDisplay controller="state" pages="1,3,4"/>
<gearXY controller="state" pages="0,1,3,4" values="2701,486|1866,33|1867,24|1868,21" default="2007,876"/> <gearXY controller="state" pages="0,1,3,4" values="2701,486|1866,33|1867,35|1868,34" default="2007,876"/>
<relation target="n155_gi99" sidePair="left-right,top-top"/> <relation target="n155_gi99" sidePair="left-right,top-top"/>
</component> </component>
<component id="n137_lu84" name="btn_setting" src="t6zvw5" fileName="Main_new/Main/Component/btn_setting.xml" xy="2193,20" size="141,117" group="n138_lu84"/> <component id="n137_lu84" name="btn_setting" src="t6zvw5" fileName="Main_new/Main/Component/btn_setting.xml" xy="2193,20" size="141,117" group="n138_lu84"/>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<component size="2532,1170" designImage="ui://v0j9abjyj6yy1ft" designImageAlpha="0"> <component size="2532,1170" designImage="ui://v0j9abjyj6yy1ft" designImageAlpha="0">
<controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态,4,观战状态" selected="0"/> <controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态,4,观战状态" selected="1"/>
<controller name="sdk" pages="0,,1," selected="0"/> <controller name="sdk" pages="0,,1," selected="0"/>
<controller name="action" pages="2,空,0,准备,1,开始" selected="0"/> <controller name="action" pages="2,空,0,准备,1,开始" selected="0"/>
<controller name="3d" pages="0,,1," selected="0"/> <controller name="3d" pages="0,,1," selected="0"/>
@ -40,14 +40,14 @@
<gearXY controller="action" pages="2,0,1" values="8054,794|-14734,794|5853,170"/> <gearXY controller="action" pages="2,0,1" values="8054,794|-14734,794|5853,170"/>
<Button icon="ui://v0j9abjygq7m48"/> <Button icon="ui://v0j9abjygq7m48"/>
</component> </component>
<component id="n228_ogwn" name="btn_start" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-1993,480" group="n230_ogwn" visible="false"> <component id="n228_ogwn" name="btn_start" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-1992,480" group="n230_ogwn" visible="false">
<Button icon="ui://v0j9abjygq7m49"/> <Button icon="ui://v0j9abjygq7m49"/>
</component> </component>
<component id="n229_ogwn" name="btn_xipai--" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-1583,487" group="n230_ogwn" scale="0.9,1"> <component id="n229_ogwn" name="btn_xipai--" src="gq7m8y" fileName="Main_style_2/Btn_Yellow.xml" xy="-1582,487" group="n230_ogwn" scale="0.9,1">
<gearDisplay controller="action" pages="1"/> <gearDisplay controller="action" pages="1"/>
<Button icon="ui://v0j9abjygq7m4i"/> <Button icon="ui://v0j9abjygq7m4i"/>
</component> </component>
<group id="n230_ogwn" name="n230" xy="-1993,480" size="10314,414" visible="false" advanced="true"> <group id="n230_ogwn" name="n230" xy="-1992,480" size="10313,414" visible="false" advanced="true">
<relation target="" sidePair="bottom-bottom,center-center"/> <relation target="" sidePair="bottom-bottom,center-center"/>
</group> </group>
<component id="n231_ogwn" name="gcm_chat" src="gq7m8z" fileName="Main_style_2/Gcm_chat.xml" xy="1933,-505"> <component id="n231_ogwn" name="gcm_chat" src="gq7m8z" fileName="Main_style_2/Gcm_chat.xml" xy="1933,-505">
@ -139,7 +139,7 @@
<relation target="" sidePair="width-width,height-height"/> <relation target="" sidePair="width-width,height-height"/>
</component> </component>
<component id="n294_kikc" name="com_notice" src="kikc1g4" fileName="Main_new/com_notice.xml" xy="567,124" size="1290,63"/> <component id="n294_kikc" name="com_notice" src="kikc1g4" fileName="Main_new/com_notice.xml" xy="567,124" size="1290,63"/>
<component id="n115_pkx5" name="player_info1_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1189,891" size="153,132"> <component id="n115_pkx5" name="player_info1_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="89,789" size="153,132">
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<gearXY controller="state" pages="0" values="1189,891" default="89,789"/> <gearXY controller="state" pages="0" values="1189,891" default="89,789"/>
<relation target="" sidePair="center-center,bottom-bottom"/> <relation target="" sidePair="center-center,bottom-bottom"/>
@ -147,7 +147,7 @@
<component id="n141_lu84" name="player_info1_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="87,788" size="153,132"> <component id="n141_lu84" name="player_info1_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="87,788" size="153,132">
<gearDisplay controller="state" pages="1,3,4"/> <gearDisplay controller="state" pages="1,3,4"/>
</component> </component>
<component id="n116_pkx5" name="player_info2_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1888,519" size="153,132"> <component id="n116_pkx5" name="player_info2_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="2004,77" size="153,132">
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<gearXY controller="state" pages="0,1,2,3" values="1888,519|2004,77|2311,292|2314,294" default="1194,274"/> <gearXY controller="state" pages="0,1,2,3" values="1888,519|2004,77|2311,292|2314,294" default="1194,274"/>
<relation target="" sidePair="middle-middle"/> <relation target="" sidePair="middle-middle"/>
@ -159,7 +159,7 @@
<component id="n140_lu84" name="player_info2_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="2311,292" size="153,132"> <component id="n140_lu84" name="player_info2_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="2311,292" size="153,132">
<gearDisplay controller="state" pages="1,3,4"/> <gearDisplay controller="state" pages="1,3,4"/>
</component> </component>
<component id="n152_kxhm" name="player_info3_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1865,29" size="153,132"> <component id="n152_kxhm" name="player_info3_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1865,38" size="153,132">
<gearDisplay controller="state" pages="1,3,4"/> <gearDisplay controller="state" pages="1,3,4"/>
</component> </component>
<component id="n262_ogwn" name="btn_inviteFamily" src="gmbn13s" fileName="Main_new/Main/Component/btn_normol.xml" xy="2415,264" size="117,249"> <component id="n262_ogwn" name="btn_inviteFamily" src="gmbn13s" fileName="Main_new/Main/Component/btn_normol.xml" xy="2415,264" size="117,249">

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<component size="2532,1170" designImage="ui://v0j9abjyj6yy1fw" designImageAlpha="0"> <component size="2532,1170" designImage="ui://v0j9abjyj6yy1fw" designImageAlpha="0">
<controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态,5,观战状态" selected="0"/> <controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态,5,观战状态" selected="2"/>
<controller name="sdk" pages="0,,1," selected="0"/> <controller name="sdk" pages="0,,1," selected="0"/>
<controller name="action" pages="2,空,0,准备,1,开始" selected="0"/> <controller name="action" pages="2,空,0,准备,1,开始" selected="0"/>
<controller name="3d" pages="0,,1," selected="0"/> <controller name="3d" pages="0,,1," selected="0"/>
@ -135,7 +135,7 @@
<gearDisplay controller="state" pages="1,3,5"/> <gearDisplay controller="state" pages="1,3,5"/>
<relation target="" sidePair="width-width,height-height"/> <relation target="" sidePair="width-width,height-height"/>
</component> </component>
<component id="n115_pkx5" name="player_info1_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1189,909" size="153,132"> <component id="n115_pkx5" name="player_info1_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="87,788" size="153,132">
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<gearXY controller="state" pages="2" values="87,788" default="1189,909"/> <gearXY controller="state" pages="2" values="87,788" default="1189,909"/>
<relation target="" sidePair="center-center,bottom-bottom"/> <relation target="" sidePair="center-center,bottom-bottom"/>
@ -144,7 +144,7 @@
<gearDisplay controller="state" pages="1,3,5"/> <gearDisplay controller="state" pages="1,3,5"/>
<relation target="" sidePair="left-left,bottom-bottom"/> <relation target="" sidePair="left-left,bottom-bottom"/>
</component> </component>
<component id="n116_pkx5" name="player_info2_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1888,519" size="153,132"> <component id="n116_pkx5" name="player_info2_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="2311,292" size="153,132">
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<gearXY controller="state" pages="2" values="2311,292" default="1888,519"/> <gearXY controller="state" pages="2" values="2311,292" default="1888,519"/>
<relation target="" sidePair="middle-middle"/> <relation target="" sidePair="middle-middle"/>
@ -153,16 +153,16 @@
<gearDisplay controller="state" pages="1,3,5"/> <gearDisplay controller="state" pages="1,3,5"/>
<relation target="" sidePair="left-right,bottom-middle"/> <relation target="" sidePair="left-right,bottom-middle"/>
</component> </component>
<component id="n150_kxhm" name="player_info3_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1189,223" size="153,132"> <component id="n150_kxhm" name="player_info3_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1865,38" size="153,132">
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<gearXY controller="state" pages="2" values="1865,29" default="1189,223"/> <gearXY controller="state" pages="2" values="1865,38" default="1189,223"/>
<relation target="" sidePair="center-center,top-top"/> <relation target="" sidePair="center-center,top-top"/>
</component> </component>
<component id="n152_kxhm" name="player_info3_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1865,29" size="153,132"> <component id="n152_kxhm" name="player_info3_2" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="1865,37" size="153,132">
<gearDisplay controller="state" pages="1,3,5"/> <gearDisplay controller="state" pages="1,3,5"/>
<relation target="" sidePair="top-top"/> <relation target="" sidePair="top-top"/>
</component> </component>
<component id="n151_kxhm" name="player_info4_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="491,519" size="153,132"> <component id="n151_kxhm" name="player_info4_1" src="pkx5so" fileName="Main_new/Main/PlayerHead_1.xml" xy="91,521" size="153,132">
<gearDisplay controller="state" pages="0,2"/> <gearDisplay controller="state" pages="0,2"/>
<gearXY controller="state" pages="2" values="91,521" default="491,519"/> <gearXY controller="state" pages="2" values="91,521" default="491,519"/>
<relation target="" sidePair="middle-middle,right-left"/> <relation target="" sidePair="middle-middle,right-left"/>