mommytellme Posted March 17, 2014 Share Posted March 17, 2014 Cześć! Mam dwa problemy z moim skryptem: Po pierwsze po kliknięciu byle gdzie oprócz buttonów gui się zamyka a po drugie kliknięcie "Kup IPhone" nic nie daje. Debugscript 3: WARNING: Sklep\client.lua:19: Bad Argument @ 'addEventHandler' [Expected element at argument 2, got nil Zawartość kodu: GUIEditor = { button = {}, window = {}, label = {} } function otworzgui() okienko = guiCreateWindow(418, 95, 275, 437, "", false) guiWindowSetSizable(okienko, false) GUIEditor.label[1] = guiCreateLabel(35, 33, 111, 15, "Sklep elektroniczny", false, okienko) GUIEditor.label[2] = guiCreateLabel(24, 104, 89, 15, "IPhone", false, okienko) kphone = guiCreateButton(230, 104, 35, 15, "Kup", false, okienko) GUIEditor.label[3] = guiCreateLabel(24, 73, 36, 15, "Nazwa", false, okienko) GUIEditor.label[4] = guiCreateLabel(156, 79, 30, 15, "Cena", false, okienko) GUIEditor.label[5] = guiCreateLabel(156, 104, 33, 15, "400$", false, okienko) zamknij = guiCreateButton(250, 30, 15, 15, "X", false, okienko) showCursor(true) addEventHandler("onClientGUIClick", zamknij, zamknijgui) addEventHandler("onClientGUIClick", kp, kupiphone) end addCommandHandler ("sklep", otworzgui) function zamknijgui() guiSetVisible (okienko, not guiGetVisible) showCursor(false) end function kupiphone() outputChatBox("Dziękujemy za zakup IPhone w naszym sklepie oraz zapraszamy ponownie!") end Dodatkowo mam pytanie odnośnie zabierania graczowi danej gotówki: Da się to zrobić bez pobierania ile jej ma i wykonywania działań matematycznych? Z góry dzięki za odpowiedzi. Link to comment
Wojak Posted March 18, 2014 Share Posted March 18, 2014 Taki przycisk jak 'kp' nie istnieje w twoim skrypcie, dlatego jest nil, Ty stwprzyłeś przycisk o nazwie 'kphone'... Po za tym podanie przycisku do funkcji "addEventHandler" nie sprawi że event będzie wykonany tylko dla tego przycisku, ale że będzie on źrudłem (source) eventu, dla tego w funkcji musisz sprawdzić czym jest source, w przypadku zamknijgui(): function zamknijgui() if source == zamknij then guiSetVisible (okienko, not guiGetVisible) showCursor(false) end end a jeśli chodzi o pytanie dodatkowe: takePlayerMoney Link to comment
mommytellme Posted March 18, 2014 Author Share Posted March 18, 2014 Dzięki za pomoc! A jeszcze jedno pytanko, mam HeroInventory i ten skrypt miałby dodawać do ekwipunku telefon. Funkcja dodawana przez heroinventory brzmi tak: bool addPlayerItem ( element playerElement, int itemID, int amount ) Ale nie zadziała gdy tak po prostu jej użyje? Muszę zrobić ten sklep w tym samym skrypcie co HeroInventory czy da się jakoś eksportować funkcję z innych skryptów? Link to comment
WhoAmI Posted March 18, 2014 Share Posted March 18, 2014 exports.nazwa_skryptu:funkcja ( parametry ) Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now