@@ -1004,7 +1004,7 @@ int ProcessPredictModel(float vPos[3], float vAng[3])
10041004 */
10051005void SpawnPainPillsAtPosition (const float vPos [3 ], const float vAng [3 ])
10061006{
1007- int entity = CreateEntityByName (" item_pain_pills " );
1007+ int entity = CreateEntityByName (" weapon_pain_pills " );
10081008 if (entity == - 1 ) return ;
10091009
10101010 DispatchSpawn (entity );
@@ -1020,7 +1020,7 @@ void GiveAmmoToAllSurvivors()
10201020 {
10211021 if (IsClientInGame (i ) && IsSurvivor (i ) && IsPlayerAlive (i ))
10221022 {
1023- CheatCommand (" give" , " ammo" );
1023+ CheatCommand (" give" , " ammo" , i );
10241024 }
10251025 }
10261026}
@@ -1159,20 +1159,32 @@ int PickTankVariant()
11591159 return 2 ;
11601160}
11611161
1162- void CheatCommand (const char [] sCmd , const char [] sArgs = " " )
1162+ void CheatCommand (const char [] sCmd , const char [] sArgs = " " , int target = 0 )
11631163{
1164- for (int i = 1 ; i < MaxClients + 1 ; i ++ ){
1165- if (IsClientInGame (i ) && ! IsFakeClient (i )){
1166- int admindata = GetUserFlagBits (i );
1167- SetUserFlagBits (i , ADMFLAG_ROOT );
1168- int iFlags = GetCommandFlags (sCmd );
1169- SetCommandFlags (sCmd , iFlags & ~ FCVAR_CHEAT );
1170- FakeClientCommand (i , " %s %s " , sCmd , sArgs );
1171- SetCommandFlags (sCmd , iFlags );
1172- SetUserFlagBits (i , admindata );
1173- break ;
1164+ int client = target ;
1165+
1166+ // 如果没有指定target或target无效,找到第一个有效的玩家(默认行为)
1167+ if (! client || ! IsClientInGame (client ) || IsFakeClient (client ))
1168+ {
1169+ for (int i = 1 ; i <= MaxClients ; i ++ )
1170+ {
1171+ if (IsClientInGame (i ) && ! IsFakeClient (i ))
1172+ {
1173+ client = i ;
1174+ break ;
1175+ }
11741176 }
11751177 }
1178+
1179+ if (! client ) return ;
1180+
1181+ int admindata = GetUserFlagBits (client );
1182+ SetUserFlagBits (client , ADMFLAG_ROOT );
1183+ int iFlags = GetCommandFlags (sCmd );
1184+ SetCommandFlags (sCmd , iFlags & ~ FCVAR_CHEAT );
1185+ FakeClientCommand (client , " %s %s " , sCmd , sArgs );
1186+ SetCommandFlags (sCmd , iFlags );
1187+ SetUserFlagBits (client , admindata );
11761188}
11771189void TeleportAllSurvivorToPercentFlow (float TargetPercent )
11781190{
0 commit comments