Veteran Member
Join Date: Jul 2011
Location: Belgium
|
04-11-2020
, 14:08
Re: Read from file.
|
#14
|
I'll just post the whole plugin, cause i can't seem to figure it out.
PHP Code:
/* Sublime AMXX Editor v2.2 */
#include <amxmodx> #include <amxmisc> #include <fun>
#define iRandom random_num(10, 255)
#pragma semicolon 1
new const szVersion[] = "1.0.0"; new szData[128];
new bool:bGlowTarget;
enum _:RgbEnum { r, g, b }
new const szCommands[][] = { "/glowmenu", "/gm", "/glow", "!glowmenu", "!gm", "!glow" };
new iMainMenu; new iColorMenu; new iRemoveMenu;
new Trie:GlowTrie;
new pAdminsOnly;
public plugin_init() { register_plugin("Advanced Glow Menu", szVersion, "NapoleoN#");
#if AMXX_VERSION_NUM < 183 new szChat[100]; #endif
for(new i; i < sizeof(szCommands); i++) { #if AMXX_VERSION_NUM < 183 formatex(szChat, charsmax(szChat), "say %s", szCommands[i]); register_clcmd(szChat, "CheckSettings");
formatex(szChat, charsmax(szChat), "say_team %s", szCommands[i]); register_clcmd(szChat, "CheckSettings"); #else register_clcmd(fmt("say %s", szCommands[i]), "CheckSettings"); register_clcmd(fmt("say_team %s", szCommands[i]), "CheckSettings"); #endif }
pAdminsOnly = register_cvar("glow_adminsonly", "1");
// Create global menu's iMainMenu = menu_create("\r[\wAdvanced Glow Menu\r]\w^nChoose an option:", "MainMenuHandler");
menu_additem(iMainMenu, "Glow Target"); menu_additem(iMainMenu, "Glow Yourself"); // Glow by aim will be added later on. menu_additem(iMainMenu, "Glow All Random"); menu_additem(iMainMenu, "Glow All"); menu_additem(iMainMenu, "Remove Glow");
iRemoveMenu = menu_create("\r[\wAdvanced Glow Menu\r]\w^nChoose an option:", "RemoveGlowHandler");
menu_additem(iRemoveMenu, "Remove Your Glow"); menu_additem(iRemoveMenu, "Remove Glow From Player"); menu_additem(iRemoveMenu, "Remove Glow All Players");
GlowTrie = TrieCreate(); ReadFile(); // This also contains a global menu. }
public CheckSettings(id) { if(get_user_flags(id) & ADMIN_KICK && get_pcvar_num(pAdminsOnly)) { menu_display(id, iMainMenu); }
else if(!get_pcvar_num(pAdminsOnly)) { menu_display(id, iMainMenu); } }
public MainMenuHandler(id, iMainMenu, item) { switch(item) { case 0: GlowTarget(id); case 1: GlowYourSelf(id); case 2: GlowAllRandom(id); case 3: GlowAll(id); case 4: menu_display(id, iRemoveMenu); // case 5: GlowAimTarget(id); } }
public ColorMenuHandler(id, iColorMenu, item) { new GlowColors[RgbEnum];
new szItemName[32]; menu_item_getinfo(iColorMenu, item, .name=szItemName, .namelen = charsmax(szItemName));
TrieGetArray(GlowTrie, szItemName, GlowColors, RgbEnum);
if(bGlowTarget) { new szPlayer[20]; new iPlayer = cmd_target(id, szPlayer, CMDTARGET_ONLY_ALIVE);
if(iPlayer) { set_user_glow(iPlayer, GlowColors[r], GlowColors[g], GlowColors[b]); bGlowTarget = false; } }
else if(is_user_alive(id)) { set_user_glow(id, GlowColors[r], GlowColors[g], GlowColors[b]); } client_print(id, print_chat, "%i %i %i", GlowColors[r], GlowColors[g], GlowColors[b]); }
public RemoveGlowHandler(id, iRemoveMenu, item) { switch(item) { case 0: set_user_rendering(id); case 1: RemoveGlowPlayer(id); case 2: RemoveGlowAll(id); } }
public GlowTarget(id) { new iPlayerMenu = menu_create("\r[\wAdvanced Glow Menu\r]\w^nChoose to glow:", "GlowPlayerHandler");
new iPlayers[32], iNum, szName[33]; get_players(iPlayers, iNum);
for(new i; i < iNum; i++) { get_user_name(iPlayers[i], szName, charsmax(szName)); menu_additem(iPlayerMenu, szName); } menu_display(id, iPlayerMenu); bGlowTarget = true; }
public GlowPlayerHandler(id, iPlayerMenu, item) { menu_display(id, iColorMenu); }
public GlowYourSelf(id) { menu_display(id, iColorMenu); }
public GlowAllRandom(id) { new iPlayers[32], iNum; get_players(iPlayers, iNum);
for(new i; i < iNum; i++) { set_user_glow(iPlayers[i], iRandom, iRandom, iRandom); } }
public GlowAll(id) { menu_display(id, iColorMenu); }
public RemoveGlowPlayer(id) { new iPlayerMenu = menu_create("\r[\wAdvanced Glow Menu\r]\w^nChoose to remove:", "RemovePlayerHandler");
new iPlayers[32], iNum, szName[33]; get_players(iPlayers, iNum);
for(new i; i < iNum; i++) { get_user_name(iPlayers[i], szName, charsmax(szName)); menu_additem(iPlayerMenu, szName); } menu_display(id, iPlayerMenu); }
public RemovePlayerHandler(id, iPlayerMenu, item) { new szPlayer[20]; new iPlayer = cmd_target(id, szPlayer, CMDTARGET_ONLY_ALIVE);
if(iPlayer) { set_user_glow(iPlayer); } }
public RemoveGlowAll(id) { new iPlayers[32], iNum; get_players(iPlayers, iNum);
for(new i; i < iNum; i++) { set_user_glow(iPlayers[i]); } }
stock set_user_glow(id, iR = 0, iG = 0, iB = 0) { set_user_rendering(id, kRenderFxGlowShell, iR, iG, iB, kRenderNormal, 25); }
ReadFile() { new szFileName[256]; get_configsdir(szFileName, charsmax(szFileName)); add(szFileName, charsmax(szFileName), "/GlowMenu.txt");
new iFilePointer = fopen(szFileName, "rt");
if(iFilePointer) { while(fgets(iFilePointer, szData, charsmax(szData))) { //fgets(iFilePointer, szData, charsmax(szData)); trim(szData);
if(szData[0] == EOS || szData[0] == ';') { continue; }
iColorMenu = menu_create("\r[\wAdvanced Glow Menu\r]\w^nChoose a color:", "ColorMenuHandler");
new szText[128], szNumber1[5], szNumber2[5], szNumber3[5]; parse(szData, szText, charsmax(szText), szNumber1, charsmax(szNumber1), szNumber2, charsmax(szNumber2), szNumber3, charsmax(szNumber3));
(is_str_num( szNumber1[0]) ) ? str_to_num(szNumber1) : str_to_num(szNumber1[1]);
new GlowColors[RgbEnum]; GlowColors[r] = str_to_num(szNumber1); GlowColors[g] = str_to_num(szNumber2); GlowColors[b] = str_to_num(szNumber3);
TrieSetArray(GlowTrie, szText, GlowColors, RgbEnum);
menu_additem(iColorMenu, szText, GlowColors);
//log_amx("R: %i^nG: %i^nB: %i", GlowColors[r], GlowColors[g], GlowColors[b]); log_amx("String szNumber1: %s", szNumber1); log_amx("String szNumber2: %s", szNumber2); log_amx("String szNumber3: %s", szNumber3); } } fclose(iFilePointer); }
Output ReadFile()
Code:
L 04/11/2020 - 19:37:13: [AdvancedGlowMenu.amxx] String szNumber1: [255
L 04/11/2020 - 19:37:13: [AdvancedGlowMenu.amxx] String szNumber2: 0,
L 04/11/2020 - 19:37:13: [AdvancedGlowMenu.amxx] String szNumber3: 0]
Output set_user_rendering()
EDIT: Nvm, i fixed it. Used another style in GlowMenu.txt
Red "255 0 0"
Then i used remove quotes and now it's working like a charm, thanks for the help though.
__________________
Last edited by Napoleon_be; 04-11-2020 at 14:17.
|
|