| Offline |
 |
 |
Csatlakozott:2016.03.06. 14:20 Hozzászólások:992 Megköszönt másnak: 115 alkalommal Megköszönték neki: 144 alkalommal
|
Pika írta: így? #include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <cstrike> new bool:AllSkinsOff[33]; new const WeaponIndex[CSW_COUNT] = { -1, -1, -1, -1, -1, -1, -1, 7, 8, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, 0, 1, 3, 2, 6 }; public plugin_init() { register_plugin("", "1.0", "Your Name") register_clcmd("say /skin", "Cmd_ToggleSkin") register_clcmd("say /skinek", "Cmd_ToggleSkin") return PLUGIN_CONTINUE; } public WeaponChange_p(iEnt) { new id = get_pdata_cbase(iEnt, 41, 4); if(!is_user_alive(id) || !is_user_connected(id)) return HAM_IGNORED; if(AllSkinsOff[id]) { return HAM_IGNORED; } new Weapon = cs_get_weapon_id(iEnt); new weapon_idx = -1; if (Weapon >= 0 && Weapon < CSW_COUNT) { weapon_idx = WeaponIndex[Weapon]; } if (weapon_idx == -1) { return HAM_IGNORED; } if(Skin[weapon_idx][id] == -1) { return HAM_IGNORED; } else { entity_set_string(id, EV_SZ_viewmodel, Fegyverek[Skin[weapon_idx][id]][gWeaponFile]); } return HAM_IGNORED; } public Cmd_ToggleSkin(id) { AllSkinsOff[id] = !AllSkinsOff[id]; if(AllSkinsOff[id]) { client_print(id, print_chat, " [SKIN] Minden skin kikapcsolva. A gyari modellek latszanak."); } else { client_print(id, print_chat, " [SKIN] Minden skin bekapcsolva. Az egyedi modellek latszanak."); } return PLUGIN_HANDLED; }
 A logika jó, de a RegisterHam sorokat ne felejtsd el a plugin_init-be tenni, különben nem történik semmi. ----- #include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <cstrike> #include <engine> // Ez hiányzott a entity_set_string miatt! #include <fakemeta> // Ez hiányzott a get_pdata_cbase miatt! new bool:AllSkinsOff[33]; new const WeaponIndex[CSW_COUNT] = { -1, -1, -1, -1, -1, -1, -1, 7, // USP 8, // GLOCK 5, // DEAGLE -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, // FAMAS 0, // M4A1 1, // AK47 3, // SCOUT 2, // AWP 6 // KNIFE }; public plugin_init() { register_plugin("", "1.0", "Your Name") register_clcmd("say /skin", "Cmd_ToggleSkin") register_clcmd("say /skinek", "Cmd_ToggleSkin") // --- EZEK HIÁNYZOTTAK A BEKÜLDÖTT KÓDBÓL --- // Ezek nélkül a WeaponChange_p sosem futna le! RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_usp", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_glock18", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_deagle", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_m4a1", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_ak47", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_awp", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_scout", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_famas", "WeaponChange_p", 1); } // Ez azért kell, hogy ha új játékos jön, biztosan lássa a skineket alapból public client_putinserver(id) { AllSkinsOff[id] = false; } public WeaponChange_p(iEnt) { new id = get_pdata_cbase(iEnt, 41, 4); if(!is_user_alive(id) || !is_user_connected(id)) return HAM_IGNORED; if(AllSkinsOff[id]) { return HAM_IGNORED; } new Weapon = cs_get_weapon_id(iEnt); new weapon_idx = -1; if (Weapon >= 0 && Weapon < CSW_COUNT) { weapon_idx = WeaponIndex[Weapon]; } if (weapon_idx == -1) { return HAM_IGNORED; } // Feltételezzük, hogy a Skin[][] és Fegyverek[][] tömbök // definiálva vannak valahol a modban globálisan. if(Skin[weapon_idx][id] == -1) { return HAM_IGNORED; } else { entity_set_string(id, EV_SZ_viewmodel, Fegyverek[Skin[weapon_idx][id]][gWeaponFile]); } return HAM_IGNORED; } public Cmd_ToggleSkin(id) { AllSkinsOff[id] = !AllSkinsOff[id]; if(AllSkinsOff[id]) { client_print(id, print_chat, " [SKIN] Minden skin kikapcsolva. A gyari modellek latszanak."); } else { client_print(id, print_chat, " [SKIN] Minden skin bekapcsolva. Az egyedi modellek latszanak."); } return PLUGIN_HANDLED; }
Nyilván a többi -> A poszt létrehozójának benne van a kódjában amire "error"-okat dob a fordító! De itt az ideiglenes is , hogy lásd lefordul: ► Spoiler mutatása #include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <cstrike> #include <engine> #include <fakemeta> #if !defined CSW_COUNT #define CSW_COUNT 32 #endif new Skin[32][33]; enum _:ItemInfo { gWeaponFile[64] } new Fegyverek[32][ItemInfo]; new bool:AllSkinsOff[33]; new const WeaponIndex[CSW_COUNT] = { -1, -1, -1, -1, -1, -1, -1, 7, // USP 8, // GLOCK 5, // DEAGLE -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, // FAMAS 0, // M4A1 1, // AK47 3, // SCOUT 2, // AWP 6, // KNIFE -1 }; public plugin_init() { register_plugin("", "1.0", "Your Name") register_clcmd("say /skin", "Cmd_ToggleSkin") register_clcmd("say /skinek", "Cmd_ToggleSkin") RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_usp", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_glock18", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_deagle", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_m4a1", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_ak47", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_awp", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_scout", "WeaponChange_p", 1); RegisterHam(Ham_Item_Deploy, "weapon_famas", "WeaponChange_p", 1); } public client_putinserver(id) { AllSkinsOff[id] = false; } public WeaponChange_p(iEnt) { new id = get_pdata_cbase(iEnt, 41, 4); if(!is_user_alive(id) || !is_user_connected(id)) return HAM_IGNORED; if(AllSkinsOff[id]) { return HAM_IGNORED; } new Weapon = cs_get_weapon_id(iEnt); if (Weapon < 0 || Weapon >= CSW_COUNT) // Biztonsági ellenőrzés return HAM_IGNORED; new weapon_idx = WeaponIndex[Weapon]; if (weapon_idx == -1) { return HAM_IGNORED; } if(Skin[weapon_idx][id] == -1) { return HAM_IGNORED; } else { entity_set_string(id, EV_SZ_viewmodel, Fegyverek[Skin[weapon_idx][id]][gWeaponFile]); } return HAM_IGNORED; } public Cmd_ToggleSkin(id) { AllSkinsOff[id] = !AllSkinsOff[id]; if(AllSkinsOff[id]) { client_print(id, print_chat, " [SKIN] Minden skin kikapcsolva. A gyari modellek latszanak."); } else { client_print(id, print_chat, " [SKIN] Minden skin bekapcsolva. Az egyedi modellek latszanak."); } return PLUGIN_HANDLED; }
_________________ | ! | Moderátori megjegyzés (kiki): | | Kérlek csekkold az aláírásra vonatkozó szabályokat! |
A hozzászólást 6 alkalommal szerkesztették, utoljára The Peace 2025.12.09. 13:05-kor.
|
|