Nóż w lewej dłoni.
Mohylew
22.05.2015
Prezesie skoro tobie działa to i u mnie powinien działać ale... niestety. Nie działa. Opiszę ci jak to robię krok po kroku może gdzieś popełniam błąd.
Kompiluje ten kod aby był amxx. Następnie wrzucam do folderu plugins. Potem dopisuje do plugins.ini i resetuje serwer. Czy coś pomijam? Czy coś robię źle? Może gdzieś coś muszę zmienić/dopisać/usunąć? Skoro jesteśmy tak blisko celu powalczmy jeszcze trochę.
oeN.
22.05.2015
Właśnie że robisz dobrze, kod również jest dobry. Wpisz w konsoli cl_righthand 1 i sprawdź czy zmieni Ci nóż na lewą a bronie będziesz miał na prawej.
Mohylew
22.05.2015
Wpisałem i jest tak jak wcześniej czyli broń i nóż zmienia się na prawą rękę
oeN.
23.05.2015
Sprawdź czy po dopisaniu w plugins.ini tego pluginu, na serwerze plugin jest włączony i wykryty, najlepiej przez amxmodmenu > 9 > 6 i szukaj tam tego pluginu po nazwie, Ja nazwałem go Left-Hand Knife więc jeśli nie zmieniałeś jej to tak będzie się nazywał. Jeśli nie znajdziesz go na liście to znaczy że źle coś dopisałeś, albo plugin może być unknown i wtedy polecam sprawdzić logi serwer po zmianie mapy czy nie ma tam czegoś związanego z pluginem.
Mohylew
23.05.2015
Jest włączony i wykryty. Logi są czyste. Nie wiem o co może chodzić. Jeżeli masz jakiś jeszcze pomysł to chętnie wysłucham. I tak masz już + za czas i cierpliwość poświęcony mojej sprawie.
oeN.
23.05.2015
Wgraj ten kod, wpisz w chat /reka i sprawdź wiadomość, zrób tak przy cl_righthand 0 i 1, przy 0 wiadomość będzie o Lewej Ręce, przy 1 będzie o Prawej Ręce.
#include <amxmodx> #include <engine> #include <hamsandwich> #include <cstrike> #define PLUGIN "Left-Hand Knife" #define VERSION "1.0" #define AUTHOR "oeN." new bool:rightHand[33]; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /reka", "Reka"); new classname[32] for(new i=1;i<31;++i) { if(i!=2) { get_weaponname(i,classname,31) RegisterHam(Ham_Item_Deploy, classname, "fwItemDeploy",1); } } } public client_authorized(id) set_task(1.0, "CheckHand", id); public CheckHand(id) { set_task(1.0, "CheckHand", id); if(!is_user_connected(id) || is_user_bot(id)) return PLUGIN_CONTINUE; query_client_cvar(id,"cl_righthand","PlayerHand"); return PLUGIN_CONTINUE; } public fwItemDeploy(wpn) { static id; id = entity_get_edict(wpn, EV_ENT_owner) new weapon = cs_get_weapon_id(wpn) if(weapon == CSW_KNIFE && rightHand[id]) client_cmd(id, "cl_righthand ^"0^""); else client_cmd(id, "cl_righthand ^"1^""); } public PlayerHand(id,const cvar[],const value[]){ new Float:val=str_to_float(value); if(val <= 0) rightHand[id] = false else rightHand[id] = true } public Reka(id) { rightHand[id] ? client_print(id, print_chat, "Uzywasz Prawej Reki") : client_print(id, print_chat, "Uzywasz Lewej Reki"); }
oeN.
23.05.2015
W takim razie zgłupiałem, wychodzi na to że plugin działa poprawnie. Gdy masz ustawione cl_righthand 1 i trzymasz byle jaką broń a następnie zmienisz na nóż to masz go w lewej ręce a jak zmienisz z noża na broń to broń jest w prawej, przynajmniej tak to działa u mnie.
Mohylew
23.05.2015
Chyba nie znajdziemy rozwiązania. U mnie wyświetla poprawne info i zmienia broń normalnie czyli nóż też
Tak jak pisałem wyżej jeżeli masz jeszcze jakiś pomysł jak to zrobić to jestem otwarty, jeżeli nie to temat można zamknąć.
oeN.
23.05.2015
Przykro mi ale ja już nie wiem co jest źle, jak byś mógł podrzucić mi jeszcze IP serwera (na PW oczywiście) na którym masz ten plugin i mieć go włączonego to wejdę i sprawdzę czy zadziała u mnie.