Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2014-07-08, 14:46


Maximerr

Programmer PHP, LUA






Wiek: 25
Na forum: 4568 dni
Posty: 548

Piwa: 1051

Respekt: 365,3
Respekt: 365,3Respekt: 365,3Respekt: 365,3Respekt: 365,3

Witam! Stworzy?em skrypt na hotel, w?a?ciwie to tworz?. I pojawia si? problem, jak zrobi? aby po klikni?ciu na button Wejd? pobiera?o ElementData lub AccountData "hotel:wynajmij", a je?li gracz tego nie ma to wyskakuje wiadomo?? "Nie posiadasz hotelu!"? I co polecacie setElementData czy setAccountData?

KOD KLIENT:
function info(tekst)
exports.msgboxrpg:showBox("info",tekst)
end

marker = createMarker ( 1498.5700683594, -1580.5150146484, 13.549827575684,  "cylinder", 1, 0, 255, 0, 50 )

local player = getLocalPlayer()

wynajmij = guiCreateButton(738, 363, 142, 28, "Wynajmij pok?j", false)
zamknij = guiCreateButton(738, 401, 142, 28, "Zamknij", false)
wejdz = guiCreateButton(738, 325, 142, 28, "Wejd?", false)
opis = guiCreateLabel(452, 302, 282, 69, "Hotel - Tutaj mo?esz wynaj?? sw?j w?asny pok?j.\nKoszt takiego pokoju wynosi 150$. Ten pok?j\n masz ju? na sta?e, a? do kupna domu.", false)
guiSetFont(opis, "default-bold-small")
id = guiCreateLabel(452, 485, 42, 15, "ID: 3", false)

guiSetVisible ( wynajmij, false )
guiSetVisible ( zamknij, false )
guiSetVisible ( wejdz, false )
guiSetVisible ( opis, false )
guiSetVisible ( id, false )

function hotel()
    dxDrawRectangle(448, 264, 442, 241, tocolor(1, 1, 1, 225), false)
    dxDrawText("Hotel Los Santos", 458, 242, 880, 274, tocolor(255, 255, 255, 255), 1.20, "bankgothic", "center", "top", false, false, true, false, false)
end



addEventHandler ( "onClientMarkerHit", marker, function(element)
guiSetVisible ( wynajmij, true )
guiSetVisible ( zamknij, true )
guiSetVisible ( wejdz, true )
guiSetVisible ( opis, true )
guiSetVisible ( id, true )
addEventHandler ("onClientRender", getRootElement(), hotel)
    end
end)


addEventHandler ( "onClientGUIClick", zamknij, function()
guiSetVisible ( wynajmij, false )
guiSetVisible ( zamknij, false )
guiSetVisible ( wejdz, false )
guiSetVisible ( opis, false )
guiSetVisible ( id, false )
removeEventHandler ("onClientRender", getRootElement(), hotel)
end)


addEventHandler ( "onClientGUIClick", wynajmij, function()
setElementData ( player, "hotel:wynajmij", true )
guiSetVisible ( wynajmij, false )
guiSetVisible ( zamknij, false )
guiSetVisible ( wejdz, false )
guiSetVisible ( opis, false )
guiSetVisible ( id, false )
removeEventHandler ("onClientRender", getRootElement(), hotel)
end)


addEventHandler ( "onClientGUIClick", wejdz, function()
guiSetVisible ( wynajmij, false )
guiSetVisible ( zamknij, false )
guiSetVisible ( wejdz, false )
guiSetVisible ( opis, false )
guiSetVisible ( id, false )
removeEventHandler ("onClientRender", getRootElement(), hotel)
end)


Za pomoc = :piwo:

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 15:18


zabijaka2000







Wiek: 26
Na forum: 5124 dni
Posty: 147
Nick w MP: aleks556

Piwa: 13

Respekt: 80

Ostrzeżeń: 20%
setElementData - po wyj?ciu z serwera usun? Ci si? dane.
setAccountData - po wyj?ciu z serwera i ponownemu zalogowaniu b?dziesz mia? dane.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 15:21


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

setAccountData nie dzia?a w c-side. Musisz stworzy? odwo?anie triggerem do s-side.

[ Dodano: 2014-07-08, 15:23 ]
A co odp to :

data = getAccountData ( getPlayerAccount ( element_gracza ), "hotel:wynajmij" )
if not data then
outputChatBox ( "Nie posiadasz hotelu", element_gracza ) return end


Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 15:32


zabijaka2000







Wiek: 26
Na forum: 5124 dni
Posty: 147
Nick w MP: aleks556

Piwa: 13

Respekt: 80

Ostrzeżeń: 20%
Je?li dzia?asz na MySQL i setElementData to ten kod powininem by? poprawny.

addEventHandler ( "onClientGUIClick", wejdz, function()
if getElementData(localPlayer, "hotel:wynajmij") == true then
guiSetVisible ( wynajmij, false )
guiSetVisible ( zamknij, false )
guiSetVisible ( wejdz, false )
guiSetVisible ( opis, false )
guiSetVisible ( id, false )
removeEventHandler ("onClientRender", getRootElement(), hotel)
else
info("Nie posiadasz hotelu!")
end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 15:40


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

zabijaka2000, nie musisz dawa? "==true" kod, je?li funkcja zwr?ci TRUE kod sam to odczyta.

Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 15:45


Maximerr

Programmer PHP, LUA






Wiek: 25
Na forum: 4568 dni
Posty: 548

Piwa: 1051

Respekt: 365,3
Respekt: 365,3Respekt: 365,3Respekt: 365,3Respekt: 365,3

Nie dzia?am na MySQL, da?by kto? odrazu odwo?anie triggerem do:
function niemasz()
data = getAccountData ( getPlayerAccount ( player ), "hotel:wynajmij" )
if not data then
outputChatBox ( "Nie posiadasz hotelu", player ) return end
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 15:47


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

od razu *

Ka?de odwo?anie wygl?da inaczej, jest zale?ne od kodu.

Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 15:54


Maximerr

Programmer PHP, LUA






Wiek: 25
Na forum: 4568 dni
Posty: 548

Piwa: 1051

Respekt: 365,3
Respekt: 365,3Respekt: 365,3Respekt: 365,3Respekt: 365,3

Czyli jak mam wogl? ten trigger zrobi?? Przez addEvent?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 16:05


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

przyk?ad triggera z s-side na c-side


s-side

addCommandHandler ( "tak", function(plr)
skin = getElementModel ( plr )
triggerClientEvent ( "przeslij", plr, skin )
end)



c-side

addEvent ( "przeslij", true )
addEventHandler ( "przeslij", root, function(skin)
skin = tonumber ( skin )
outputChatBox ( skin )
end)


Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 16:56


Maximerr

Programmer PHP, LUA






Wiek: 25
Na forum: 4568 dni
Posty: 548

Piwa: 1051

Respekt: 365,3
Respekt: 365,3Respekt: 365,3Respekt: 365,3Respekt: 365,3

Czy m?g?by mi to kto? zrobi?? Nie rozumiem, tego triggerowania ju? ;/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 16:59


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

coo w tym trudnego ? Wysylasz "sygna?" na odpowiedni? stron? i po tej stronie nadajesz nowy event i event do wydarzenia z nazw? kt?ra da?e? w triggerze.

Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-08, 17:11


Maximerr

Programmer PHP, LUA






Wiek: 25
Na forum: 4568 dni
Posty: 548

Piwa: 1051

Respekt: 365,3
Respekt: 365,3Respekt: 365,3Respekt: 365,3Respekt: 365,3

Co? takiego?
Strona klienta:
addEvent ( "niemasz", true )
addEventHandler ( "niemasz", root, function(data)
data = getAccountData ( getPlayerAccount ( player ), "hotel:wynajmij" )
if not data then
info(player,"Nie posiadasz pokoju hotelowego.") return end
end)


[ Dodano: 2014-07-08, 21:54 ]
Pomo?e kto?? Za pomoc = :piwo: ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-14, 00:06


kubak14







Wiek: 24
Na forum: 5346 dni
Posty: 119
Nick w MP: Heavy

Piwa: 149

Respekt: 45,8

Ostrzeżeń: 20%
Kod:

addEvent ( "niemasz", true )
addEventHandler ( "niemasz", root, function(data)
data = getAccountData ( getPlayerAccount ( player ), "hotel:wynajmij" )
if not data then
outputChatBox("Nie posiadasz pokoju hotelowego.", player) return end
end)


Masz zdefiniowane info? Nie

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-14, 00:24


Maximerr

Programmer PHP, LUA






Wiek: 25
Na forum: 4568 dni
Posty: 548

Piwa: 1051

Respekt: 365,3
Respekt: 365,3Respekt: 365,3Respekt: 365,3Respekt: 365,3

kubak14, Da?em tylko skrawek kodu, mam to zdefiniowane ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-14, 00:28


krydianero

Samotny Wilk






Wiek: 33
Na forum: 4924 dni
Posty: 395
Nick w MP: Yoshida

Piwa: 1799

Respekt: 117,3
Respekt: 117,3

Tak maximerr co? takiego jeszcze strona servera do tego

Podpis

Multi Drive Unlimited:Nowy projekt już wkrótce

Postaw piwo autorowi tego posta
 

 
Tagi: skrypt :: hotelu
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Skrypt Hotelu Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku