This commit is contained in:
2026-10-08 05:01:13 +08:00
parent b8d546a374
commit 5062398e77
8 changed files with 239 additions and 124 deletions
@@ -20,6 +20,9 @@ public class BullitMove : MonoBehaviour
MonsterContral target;
public Transform targetTra;
public string bulletID;
/// <summary>该发子弹的实际扣费炮倍(双倍炮=2倍炮倍)。击中结算时作为 KillFish 的 paoBei 上报,
/// 后端按它算奖励 → 双倍炮奖励随之×2。0=未记录(回退发射者座位炮倍)</summary>
public long fireGold = 0;
// 转向参数
public float maxTurnSpeed = 15f; // 最大转向速度(度/秒)
@@ -319,8 +322,12 @@ public class BullitMove : MonoBehaviour
if (userid == GameManager.Instance.user.id)
{
// 真人玩家击杀
// ⭐ paoBei 用该发实际扣费炮倍(双倍炮=2倍),后端按它结算 → 奖励×2;
// 未记录时回退当前座位炮倍(兼容旧逻辑)
long paoBei = fireGold > 0 ? fireGold
: CreateFishManager.Instance.currGameType.currSitData.consumeGoldNum;
var v2 = GameManager.Instance.gameData.currRoomData;
WebSocketSendList.KillFish(v2.roomId, userid, monster.monsterData.fishTypeConfig.fishNumber, monster.guid, (int)CreateFishManager.Instance.currGameType.currSitData.consumeGoldNum, bulletID, "63215f0afa3f5b25");
WebSocketSendList.KillFish(v2.roomId, userid, monster.monsterData.fishTypeConfig.fishNumber, monster.guid, (int)paoBei, bulletID, "63215f0afa3f5b25");
}
else if (!string.IsNullOrEmpty(userid) && userid.StartsWith("bot_"))
{
@@ -61,6 +61,8 @@ namespace Assets.MyGame.Scripts.Net.WebResponses
biaoQing=14,
/// <summary>钻头蟹/激光蟹释放:击杀者点击(或超时)发射钻头/激光,广播给房间所有客户端(含发送者回广播),各端统一时刻发射</summary>
zuanTouRelease=15,
/// <summary>加金币:某玩家通过刮刮卡等 HTTP 途径获得金币(服务端不加房间推送),发送端本地加好后广播,各客户端给对应座位加金币</summary>
addGold=16,
}
[Serializable]
public class FireCannonSendData
@@ -185,6 +187,19 @@ namespace Assets.MyGame.Scripts.Net.WebResponses
public long score;
}
/// <summary>
/// 加金币帧数据(frameType=addGold)。
/// 刮刮卡等 HTTP 途径获得金币后,由获得者客户端广播,各客户端给对应座位(sync.sitPos)加金币并刷新显示。
/// </summary>
[Serializable]
public class FrameData_AddGold : FrameData
{
/// <summary>增加的金币数</summary>
public long gold;
/// <summary>来源描述(金币流水日志用,如 "GuaGuaKa")</summary>
public string source;
}
/// <summary>
/// 表情包类型:spine 动画表情 / 文字表情
/// </summary>
@@ -408,6 +408,10 @@ namespace Assets.MyGame.Scripts.Net
case FrameDataType.zuanTouRelease:
EventCenter.Instance.EventTrigger<SyncGameData>(ConstEventString.SyncGameData_ZuanTouRelease, syncGameData);
break;
// ⭐ 加金币:刮刮卡等 HTTP 途径获得金币后广播,各客户端给对应座位加金币并刷新显示
case FrameDataType.addGold:
EventCenter.Instance.EventTrigger<SyncGameData>(ConstEventString.SyncGameData_AddGold, syncGameData);
break;
default:
break;
}