Make scoreboard key re-bindable

This commit is contained in:
Vortrex
2023-02-21 19:48:38 -06:00
parent a0477b10fe
commit d70a8d451a
6 changed files with 36 additions and 6 deletions

View File

@@ -104,6 +104,11 @@
"keyName": "9",
"commandString": "item 9",
"keyState": 1
},
{
"keyName": "f5",
"commandString": "scoreboard",
"keyState": 1
}
]
}

View File

@@ -152,6 +152,7 @@ function addAllNetworkHandlers() {
addNetworkEventHandler("v.rp.minuteDuration", setMinuteDuration);
addNetworkEventHandler("v.rp.snow", setSnowState);
addNetworkEventHandler("v.rp.enterPropertyKey", setEnterPropertyKey);
addNetworkEventHandler("v.rp.scoreBoardKey", setScoreBoardKey);
addNetworkEventHandler("v.rp.skinSelect", toggleSkinSelect);
addNetworkEventHandler("v.rp.hotbar", updatePlayerHotBar);
addNetworkEventHandler("v.rp.logLevel", setLogLevel);
@@ -288,7 +289,6 @@ function setEnterPropertyKey(key) {
} else {
enterPropertyKey = key;
}
}
// ===========================================================================

View File

@@ -12,7 +12,7 @@ let scoreBoardListFont = null;
let pausedColour = COLOUR_RED;
let scoreboardKey = SDLK_TAB;
let scoreBoardKey = null;
// ===========================================================================
@@ -43,7 +43,7 @@ function processScoreBoardRendering() {
}
if (renderScoreBoard) {
if (isKeyDown(SDLK_TAB)) {
if (isKeyDown(scoreBoardKey)) {
if (scoreBoardListFont != null && scoreBoardTitleFont != null) {
let scoreboardStart = (game.height / 2) - (Math.floor(getClients().length / 2) * 20);
let titleSize = scoreBoardTitleFont.measure("PLAYERS", game.width, 0.0, 1.0, 10, false, false);
@@ -101,4 +101,16 @@ function processScoreBoardRendering() {
}
}
}
}
}
// ===========================================================================
function setScoreBoardKey(key) {
if (key == -1) {
scoreBoardKey = null;
} else {
scoreBoardKey = key;
}
}
// ===========================================================================

View File

@@ -562,9 +562,9 @@ function onPlayerSpawn(client) {
if (!doesPlayerHaveKeyBindsDisabled(client) && doesPlayerHaveKeyBindForCommand(client, "scoreboard")) {
let keyId = getPlayerKeyBindForCommand(client, "scoreboard");
logToConsole(LOG_DEBUG, `[V.RP.Event] Sending scoreboard key ID (${keyId.key}, ${toUpperCase(getKeyNameFromId(keyId.key))}) to ${getPlayerDisplayForConsole(client)}`);
sendPlayerScoreboardKey(client, keyId.key);
sendPlayerScoreBoardKey(client, keyId.key);
} else {
sendPlayerScoreboardKey(client, -1);
sendPlayerScoreBoardKey(client, -1);
}
sendPlayerChatBoxTimeStampsState(client, isPlayerAccountSettingEnabled(client, "ChatBoxTimestamps"));

View File

@@ -1012,4 +1012,11 @@ function getPlayerInPropertyData(client) {
getPlayerData(client).inProperty = null;
}
// ===========================================================================
function scoreBoardCommand(command, params, client) {
// Handled client side
return false;
}
// ===========================================================================

View File

@@ -1010,6 +1010,12 @@ function sendPlayerEnterPropertyKey(client, key) {
// ===========================================================================
function sendPlayerScoreBoardKey(client, key) {
sendNetworkEventToPlayer("v.rp.scoreBoardKey", client, key);
}
// ===========================================================================
function makePedPlayAnimation(ped, animationSlot, positionOffset) {
if (getAnimationData(animationSlot).loop == true) {
setEntityData(ped, "v.rp.anim", animationSlot, true);