diff --git a/Mod/RespawnEqument/README.md b/Mod/RespawnEqument/README.md index 5aee541..e7331aa 100644 --- a/Mod/RespawnEqument/README.md +++ b/Mod/RespawnEqument/README.md @@ -6,24 +6,48 @@ 在init.c中.通常都是将大堆的代码直接带入到文件中, 导致init.c中的代码臃肿不堪,难以维护,对于此种情况,请参考本代码示例, 正确的处理在init.c中的代码逻辑 -擅于使用 #include 标签来引入外部的.c文件, 将一些方法封装成一个类,进行调用, 而不是所有的代码都插入到init.c中. 参阅Scripts文件夹中的代码, 已经init.c的第一行. +擅于使用 #include 标签来引入外部的.c文件, 将一些方法封装成一个类,进行调用, 而不是所有的代码都插入到init.c中. 参阅Scripts文件夹中的代码, 以及init.c的第一行. #### 代码的功能: -代码编写了一个服主常用的功能, 给指定ID的玩家创建一套复活时穿戴的装备, 支持枪械配件的组装. +代码编写了一个服主常用的功能, 给~~指定ID的~~单人或者小队玩家创建一套复活时穿戴的装备, 支持枪械配件的组装. +```json +{ + "PlayerRevivalEquipmentDataList": [ + { + // 队伍的名字, 方便识别 + "TeamName": "暗夜", + //队伍成员列表, 只填写17位SteamID + "TeamMembers": [ + "76561198422667486" + ], + // 小队装备, 这些装备会刷新在玩家的插槽中. + "Equipments": [ + "WoolGloves_White", + "BaseballCap_Black", + "Jeans_Blue", + "Wellies_Black", + "TShirt_Black" + ], + // 小队的额外物品, VIP玩家除了会得到系统默认的物品外,还会得到这里的物品 + "ItemList": [ + "Apple" + ], + // 小队成员默认的出生武器, 只能配置一把枪械. + "WeaponData": { + // 枪械的代码 + "WeaponName": "FAL", + "Desc": "武器配件中,一级配件(比如枪托,弹夹)放在前排,二级配件(比如电池)其次 以此类推", + "WeaponComponents": [ + "Fal_FoldingBttstck", + "Mag_FAL_20Rnd" + ] + } + } + ] +} +``` #### 如何使用: 将Scripts文件夹和init.c文件一同放置到你的任务文件中, 如果自己的init.c有其他编写的代码, 请插入到现在的init.c中. -启动服务端后, 会在你的Profile目录下创建配置文件, 请自行通过配置给不同的玩家创建出生装备. - -#### 可行的尝试: - -对于懂代码的服主,可以尝试自行修改代码,实现一些额外的功能. - -- 玩家进入游戏时的状态处理 - -- 玩家退出游戏时的物品处理 - -- 利用invoke进行实时的监控玩家. - -- 监控客户端的RPC通讯 \ No newline at end of file +启动服务端后, 会在你的Profile目录下创建配置文件, 请自行通过配置给不同的玩家创建出生装备. \ No newline at end of file diff --git a/Mod/RespawnEqument/Scripts/CustomRevivalSuit/config.c b/Mod/RespawnEqument/Scripts/CustomRevivalSuit/config.c index 10b2bc6..2ab24b3 100644 --- a/Mod/RespawnEqument/Scripts/CustomRevivalSuit/config.c +++ b/Mod/RespawnEqument/Scripts/CustomRevivalSuit/config.c @@ -66,6 +66,7 @@ class CustomRevivalSuitCfg class PlayerRevivalEquipmentData { // string SteamId; + string TeamName; ref TStringArray TeamMembers; // 兼容个人和队伍,单人玩家 == 单人队伍 ref TStringArray Equipments; @@ -75,6 +76,7 @@ class PlayerRevivalEquipmentData void PlayerRevivalEquipmentData( string steamid ) { // SteamId = steamid; + TeamName = "小队名字"; TeamMembers = new TStringArray(); TeamMembers.Insert( steamid );