Compare commits

...

2 Commits

Author SHA1 Message Date
d596530064 refactor(RespawnEquipment): 优化复活装备配置逻辑并更新文档
重构了CustomRevivalSuitCfg类的配置逻辑,支持小队和单人玩家的装备配置,同时更新了README.md文档以反映新的功能和使用说明。移除了不再使用的RemovePlayerRevivalEquipmentData方法,并修复了PlayerRevivalEquipmentData类的初始化逻辑。
2025-04-21 21:03:19 +08:00
d2632d04d4 refactor(RespawnEquipment): 添加isVIP参数以区分普通玩家和VIP玩家
在DefaultPlayerEquipment方法中添加isVIP参数,用于区分普通玩家和VIP玩家的装备处理逻辑。普通玩家的装备创建逻辑暂时留空,待后续实现。
2025-04-21 20:58:47 +08:00

View File

@@ -79,10 +79,13 @@ class CustomMission: MissionServer
string steamid = player.GetIdentity().GetPlainId(); string steamid = player.GetIdentity().GetPlainId();
ref PlayerRevivalEquipmentData rev = g_CustomRevivalSuitCfg.GetPlayerRevivalEquipmentData( steamid ); ref PlayerRevivalEquipmentData rev = g_CustomRevivalSuitCfg.GetPlayerRevivalEquipmentData( steamid );
bool isVIP = false;
if ( rev ) if ( rev )
{
isVIP = true;
ProcessVIPEquipment( player, rev ); ProcessVIPEquipment( player, rev );
}
DefaultPlayerEquipment( player, clothesChosen ); DefaultPlayerEquipment( player, clothesChosen, isVIP );
} }
//------------------------------------------------------------------ //------------------------------------------------------------------
// 处理VIP装备方法为VIP玩家设置自定义装备 // 处理VIP装备方法为VIP玩家设置自定义装备
@@ -141,15 +144,23 @@ class CustomMission: MissionServer
// 参数: // 参数:
// player - 玩家对象 // player - 玩家对象
// clothesChosen - 是否已选择服装 // clothesChosen - 是否已选择服装
// isVIP - 是否为VIP玩家
// 这里的代码是原版init.c中 StartingEquipSetup 方法中的内容, 只是换了个方法名字 // 这里的代码是原版init.c中 StartingEquipSetup 方法中的内容, 只是换了个方法名字
//------------------------------------------------------------------ //------------------------------------------------------------------
void DefaultPlayerEquipment( PlayerBase player, bool clothesChosen ) void DefaultPlayerEquipment( PlayerBase player, bool clothesChosen, bool isVIP )
{ {
EntityAI itemClothing; EntityAI itemClothing;
EntityAI itemEnt; EntityAI itemEnt;
ItemBase itemBs; ItemBase itemBs;
float rand; float rand;
if ( !isVIP )
{
// TODO: 这里给普通玩家创建装备. 以前在StartingEquipSetup中如何给玩家创建新的装备这里就如何写
// player.RemoveAllItems(); // 移除所有默认装备
// itemEnt = player.GetInventory().CreateInInventory( "" /*这里写服装代码 */ );
}
itemClothing = player.FindAttachmentBySlotName( "Body" ); itemClothing = player.FindAttachmentBySlotName( "Body" );
if ( itemClothing ) if ( itemClothing )
{ {