update kick vote
This commit is contained in:
@ -224,15 +224,10 @@ private function bool PlayerHasRequiredLevel(KFPlayerController KFPC)
|
||||
return (KFPRI.GetActivePerkLevel() >= CfgStartWaveKickProtection.default.MinLevel);
|
||||
}
|
||||
|
||||
public function bool PlayerCanKickVote(KFPlayerController KFPC, optional KFPlayerController KFPC_Kickee)
|
||||
public function bool PlayerCanStartKickVote(KFPlayerController KFPC, KFPlayerController KFPC_Kickee)
|
||||
{
|
||||
`Log_Trace();
|
||||
|
||||
if (KFPC_Kickee == None)
|
||||
{
|
||||
KFPC_Kickee = KFPlayerController(KFGRI.VoteCollector.CurrentKickVote.PlayerPRI.Owner);
|
||||
}
|
||||
|
||||
if (KFPC_Kickee != None)
|
||||
{
|
||||
if (KFPC == KFPC_Kickee)
|
||||
|
@ -7,8 +7,8 @@ var private localized String PlayerIsKickProtected;
|
||||
var const String PlayerIsStartWaveKickProtectedDefault;
|
||||
var private localized String PlayerIsStartWaveKickProtected;
|
||||
|
||||
var const String PlayerCantVoteDefault;
|
||||
var private localized String PlayerCantVote;
|
||||
var const String PlayerCantStartKickVoteDefault;
|
||||
var private localized String PlayerCantStartKickVote;
|
||||
|
||||
var const String KickVoteNotEnoughPlayersDefault;
|
||||
var private localized String KickVoteNotEnoughPlayers;
|
||||
@ -44,7 +44,7 @@ enum E_CVC_LocalMessageType
|
||||
{
|
||||
CVC_PlayerIsKickProtected,
|
||||
CVC_PlayerIsStartWaveKickProtected,
|
||||
CVC_PlayerCantVote,
|
||||
CVC_PlayerCantStartKickVote,
|
||||
|
||||
CVC_KickVoteNotEnoughPlayers,
|
||||
CVC_KickVoteStarted,
|
||||
@ -97,8 +97,8 @@ public static function String GetLocalizedString(
|
||||
case CVC_PlayerIsStartWaveKickProtected:
|
||||
return ReplWaves(ReplKickee(default.PlayerIsStartWaveKickProtected != "" ? default.PlayerIsStartWaveKickProtected : default.PlayerIsStartWaveKickProtectedDefault, String1), String2);
|
||||
|
||||
case CVC_PlayerCantVote:
|
||||
return ReplWaves(default.PlayerCantVote != "" ? default.PlayerCantVote : default.PlayerCantVoteDefault, String1);
|
||||
case CVC_PlayerCantStartKickVote:
|
||||
return ReplWaves(default.PlayerCantStartKickVote != "" ? default.PlayerCantStartKickVote : default.PlayerCantStartKickVoteDefault, String1);
|
||||
|
||||
case CVC_KickVoteNotEnoughPlayers:
|
||||
return ReplWaves(default.KickVoteNotEnoughPlayers != "" ? default.KickVoteNotEnoughPlayers : default.KickVoteNotEnoughPlayersDefault, String1);
|
||||
@ -147,7 +147,7 @@ defaultproperties
|
||||
{
|
||||
PlayerIsKickProtectedDefault = "<kickee> is protected from kick"
|
||||
PlayerIsStartWaveKickProtectedDefault = "You can't kick <kickee> right now. He can be kicked when he plays at least <waves> wave(s)"
|
||||
PlayerCantVoteDefault = "You can't vote for kick now. You can vote when you play at least <waves> wave(s)"
|
||||
PlayerCantStartKickVoteDefault = "You can't start kick vote now. You can start kick vote when you play at least <waves> wave(s)"
|
||||
KickVoteNotEnoughPlayersDefault = "Not enough players to start vote (only players who have played at least <waves> wave(s) can vote)"
|
||||
KickVoteStartedDefault = "<kicker> has started a vote to kick <kickee>"
|
||||
KickVoteStartedForPlayerDefault = "<kicker> started voting to kick you"
|
||||
|
@ -46,7 +46,6 @@ public function ServerStartVoteKick(PlayerReplicationInfo PRI_Kickee, PlayerRepl
|
||||
{
|
||||
local Array<KFPlayerReplicationInfo> KFPRIs;
|
||||
local KFPlayerReplicationInfo KFPRI;
|
||||
local KFPlayerController KFPC;
|
||||
local KFGameInfo KFGI;
|
||||
|
||||
`Log_Trace();
|
||||
@ -70,11 +69,11 @@ public function ServerStartVoteKick(PlayerReplicationInfo PRI_Kickee, PlayerRepl
|
||||
return;
|
||||
}
|
||||
|
||||
if (!CVC.PlayerCanKickVote(KFPC_Kicker, KFPC_Kickee))
|
||||
if (!CVC.PlayerCanStartKickVote(KFPC_Kicker, KFPC_Kickee))
|
||||
{
|
||||
CVC.WriteToChatLocalized(
|
||||
KFPC_Kicker,
|
||||
CVC_PlayerCantVote,
|
||||
CVC_PlayerCantStartKickVote,
|
||||
CfgKickVote.default.WarningColorHex,
|
||||
String(CfgStartWaveKickProtection.default.Waves));
|
||||
return;
|
||||
@ -164,7 +163,7 @@ public function ServerStartVoteKick(PlayerReplicationInfo PRI_Kickee, PlayerRepl
|
||||
GetKFPRIArray(KFPRIs);
|
||||
foreach KFPRIs(KFPRI)
|
||||
{
|
||||
KFPRI.ShowKickVote(PRI_Kickee, VoteTime, !(KFPRI == PRI_Kicker || KFPRI == PRI_Kickee || !CVC.PlayerCanKickVote(KFPlayerController(KFPRI.Owner))));
|
||||
KFPRI.ShowKickVote(PRI_Kickee, VoteTime, !(KFPRI == PRI_Kicker || KFPRI == PRI_Kickee));
|
||||
}
|
||||
|
||||
if (CfgKickVote.default.bChatNotifications)
|
||||
@ -180,25 +179,7 @@ public function ServerStartVoteKick(PlayerReplicationInfo PRI_Kickee, PlayerRepl
|
||||
KFPC_Kickee,
|
||||
CVC_KickVoteStartedForPlayer,
|
||||
CfgKickVote.default.NegativeColorHex,
|
||||
KickerName,
|
||||
KickeeName);
|
||||
|
||||
foreach KFPRIs(KFPRI)
|
||||
{
|
||||
if (KFPRI == PRI_Kickee)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
KFPC = KFPlayerController(KFPRI.Owner);
|
||||
if (!CVC.PlayerCanKickVote(KFPC))
|
||||
{
|
||||
CVC.WriteToChatLocalized(
|
||||
KFPC,
|
||||
CVC_PlayerCantVote,
|
||||
CfgKickVote.default.WarningColorHex,
|
||||
String(CfgStartWaveKickProtection.default.Waves));
|
||||
}
|
||||
}
|
||||
KickerName);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -260,7 +241,7 @@ private function int VotingPlayers(optional PlayerReplicationInfo KickeePRI, opt
|
||||
foreach KFPRIs(KFPRI)
|
||||
{
|
||||
KFPC = KFPlayerController(KFPRI.Owner);
|
||||
if (KFPC != None && CVC.PlayerCanKickVote(KFPC, KFPC_Kickee))
|
||||
if (KFPC != None && KFPC != KFPC_Kickee)
|
||||
{
|
||||
VotingPlayersNum++;
|
||||
}
|
||||
@ -569,7 +550,7 @@ private function LogKickVotes()
|
||||
}
|
||||
|
||||
`Log_Kick("Kicker:" @ LogVotePlayer(Kicker));
|
||||
`Log_Kick("Kicked:" @ LogVotePlayer(Kickee) @ String(Kickee.Perk) @ String(Kickee.Level));
|
||||
`Log_Kick("Kicked:" @ LogVotePlayer(Kickee));
|
||||
|
||||
`Log_Kick("Yes voters:");
|
||||
foreach Yes(KV) `Log_Kick(LogVotePlayer(KV));
|
||||
@ -584,7 +565,7 @@ private function String LogVotePlayer(S_KickVote KV)
|
||||
{
|
||||
`Log_Trace();
|
||||
|
||||
return KV.Name @ "(UniqueID:" @ KV.UniqueID $ (KV.SteamID == "" ? "" : (", SteamID:" @ KV.SteamID $ ", Profile:" @ "https://steamcommunity.com/profiles/" $ KV.SteamID)) $ ")";
|
||||
return KV.Name @ "(UniqueID:" @ KV.UniqueID $ (KV.SteamID == "" ? "" : (", SteamID:" @ KV.SteamID $ ", Profile:" @ "https://steamcommunity.com/profiles/" $ KV.SteamID)) $ ")" @ "Perk:" @ Repl(String(KV.Perk), "KFPerk_", "", false) @ "Level:" @ String(KV.Level);
|
||||
}
|
||||
|
||||
public reliable server function RecieveVoteSkipTrader(PlayerReplicationInfo PRI, bool bSkip)
|
||||
|
Reference in New Issue
Block a user