Hi, I am very new at scripting, I want to know how to write and read string from array, like assign string to player id and retrieve it.
I had this:
Code:
new playerSaved[33]
playerSaved[id] = "weapon_m4a1"
if(playerSaved[id] == "weapon_m4a1") {
// do some stuff
}
EDIT:
First error was that I must gave specified length on the string stored in array like
Code:
new playerSaved[33][64]
and secondly, if condition was wrong, turns out I had to use equali
Code:
if(equali(playerSaved[id], "weapon_m4a1"))
I know it's poorly coded, but it is as expected
I am using this plugin with simplemenu:
https://forums.alliedmods.net/showthread.php?t=284324
and in simplemenu's settings, calling do.func(buymenu_helper.amxx, get_weapon_ak47) on item selection and it works like a charm
1. New Guns (amx_buy_new)
2. Previous Guns (do.func(buymenu_helper.amxx, getPreviousGuns))
3. Previous Guns & Save (do.func(buymenu_helper.amxx, getPreviousGunsDisable))
Code:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>
new playerSelection[33]
new playerSaved[33][64]
public plugin_init() {
register_plugin("[CSO] Buymenu Helper", "1.0", "Nevermind23")
register_clcmd("amx_buy_open", "oldOrNew")
register_clcmd("say /guns", "enableMenu")
register_clcmd("say guns", "enableMenu")
register_clcmd("team_say /guns", "enableMenu")
register_clcmd("team_say guns", "enableMenu")
}
public oldOrNew(id) {
if(equali(playerSaved[id], "empty") || equali(playerSaved[id], "")) {
client_cmd(id, "amx_buy_new")
return 1
}
if(playerSelection[id] == 0) {
client_cmd(id, "amx_buy_selection")
return 1
}
getPreviousGuns(id)
return 1
}
public getPreviousGuns(id) {
client_cmd(id, playerSaved[id])
return 1
}
public getPreviousGunsDisable(id) {
getPreviousGuns(id)
playerSelection[id] = 1
return 1
}
public enableMenu(id) {
if(playerSelection[id] == 0) {
client_print(id, print_chat, "[CSO] Gun selection is already enabled")
return 0
}
client_print(id, print_chat, "[CSO] Gun selection has been enabled")
client_cmd(id, "amx_buy_new")
playerSelection[id] = 0
return 1
}
public client_connet(id) {
playerSelection[id] = 0
playerSaved[id] = "empty"
return 1
}
public client_disconnected(id) {
playerSelection[id] = 0
playerSaved[id] = "empty"
return 1
}
public get_weapon_ak47(id) {
client_cmd(id, "get_weapon_ak47")
playerSaved[id] = "get_weapon_ak47"
return 1
}
...
public get_weapon_m4a1(id) {
client_cmd(id, "get_weapon_m4a1")
playerSaved[id] = "get_weapon_m4a1"
return 1
}