Hallo MTA-SA Community ,
ich habe mich heute mal kurz rangesetzt und zum ersten mal ein Script mit einem GUI erstellt .
Mein Problem was ich nun habe ist nun aber dass beim ersten mal wenn man z.B auf den Button San Fierro drückt werden einen 300 $ abgehoben . Nun aber wenn man es nochmal macht werden 600 $ abgehoben obwohl der Preis nicht wirklich erhöht wurde . Ich poste hier mal zum Verständnis das Client-/Serverside Script .
Client :
Lua
---------------------------------------
----------[LE]False---------------------
---------14.1.2013----------------------
----------------------------------------
chicken = getLocalPlayer()
testwindow = guiCreateWindow(510, 194, 360, 356, "Airport SF|LS|LV", false)
guiSetVisible ( testwindow, false )
guiWindowSetMovable(testwindow, false)
guiWindowSetSizable(testwindow, false)
spambutton = guiCreateButton(558, 236, 270, 63, "San Fierro", false)
guiSetProperty(spambutton, "NormalTextColour", "FFAAAAAA")
guiSetVisible ( spambutton, false )
spambutton2 = guiCreateButton(558, 326, 270, 63, "Las Venturas", false)
guiSetProperty(spambutton2, "NormalTextColour", "FFAAAAAA")
guiSetVisible ( spambutton2, false )
showCursor(false)
spambutton3 = guiCreateButton(558, 406, 270, 63, "Los Santos", false)
guiSetProperty(spambutton3, "NormalTextColour", "FFAAAAAA")
guiSetVisible ( spambutton3, false )
showCursor(false)
close = guiCreateButton(811, 518, 31, 27, "X", false)
guiSetVisible ( close, false )
function chicken_GUI ()
showCursor(true)
addEventHandler ("onClientGUIClick", spambutton,
function ( btn, state )
if state == "up" and source == spambutton then
triggerServerEvent ( "teleport_san_fierro", chicken )
end
end,
false)
addEventHandler ("onClientGUIClick", spambutton2,
function ( btn, state )
if state == "up" and source == spambutton2 then
triggerServerEvent ( "teleport_las_venturas", chicken )
end
end,
false)
addEventHandler ("onClientGUIClick", spambutton3,
function ( btn, state )
if state == "up" and source == spambutton3 then
triggerServerEvent ( "teleport_los_santos", chicken )
end
end,
false)
guiSetVisible ( spambutton, true )
guiSetVisible ( spambutton2, true )
guiSetVisible ( spambutton3, true )
guiSetVisible ( testwindow, true )
guiSetVisible ( close, true )
end
addEvent ("chicken_GUI", true )
addEventHandler ("chicken_GUI", getRootElement(), chicken_GUI )
function nothing( btn, state )
if state == "up" and source == close then
guiSetVisible ( testwindow, false )
guiSetVisible ( spambutton, false )
guiSetVisible ( spambutton2, false )
guiSetVisible ( spambutton3, false )
guiSetVisible ( close, false )
showCursor(false)
end
end
addEvent ("nothing", true )
addEventHandler ("onClientGUIClick", close, nothing )
Alles anzeigen
Server :
Lua
----------------------------------------
----------[LE]False---------------------
---------14.1.2013----------------------
----------------------------------------
--Blip
airportblipls = createBlip ( 1730.3564453125, -2238.4990234375, 12.5, 5, 2, 255, 0, 0, 255, 0, 200, getRootElement() )
airportblipsf = createBlip ( -1427.3438720703, -283.74108886719, 13.1484375, 5, 2, 255, 0, 0, 255, 0, 200, getRootElement() )
airportbliplv = createBlip ( 1673.3204345703, 1447.7390136719, 9.785799980164, 5, 2, 255, 0, 0, 255, 0, 200, getRootElement() )
--Marker
LSmarker = createMarker ( 1730.3564453125, -2238.4990234375, 12.5, "cylinder", 1.2, 125, 0, 0, 255 )
SFmarker = createMarker ( -1427.3438720703, -283.74108886719, 13.1484375, "cylinder", 1.2, 125, 0, 0, 255 )
LVmarker = createMarker ( 1673.3204345703, 1447.7390136719, 9.785799980164, "cylinder", 1.2, 125, 0, 0, 255 )
-------------------------------
------Daten für Vio_lite-------
--local airportpricesf = 300
--local airportpricels = 300
--local airportpricelv = 300
-------------------------------
-------------------------------
function teleport_san_fierro ( player, thePlayer )
local sfairportmoney = getPlayerMoney ( source )
--if vioGetElementData ( player, "money" ) >= airportpricesf then
if (sfairportmoney > 299 ) then
setElementPosition ( source, -1417.9946289063, -292.36437988281, 14.1484375 )
setElementRotation ( source, 135 )
takePlayerMoney ( source, 300 )
--takePlayerSaveMoney ( player, airportpricesf )
else
outputChatBox ( "Du hast nicht genug Geld !", source, 255, 0, 0 )
outputChatBox ( "Du besitzt zurzeit nur "..sfairportmoney.." !", source, 255, 0, 0 )
-- outputChatBox ( "Du besitzt zurzeit nur "..Füg das Selber hinzu.." !", source, 255, 0, 0 )
outputChatBox ( "Der Flug nach SF|LS|LV <-> LS|LV|SF kostet $300 !", source, 255, 0, 0 )
end
end
addEvent ("teleport_san_fierro", true )
addEventHandler ("teleport_san_fierro", getRootElement(), teleport_san_fierro )
function teleport_los_santos ( player, thePlayer )
local lsairportmoney = getPlayerMoney ( source )
--if vioGetElementData ( player, "money" ) >= airportpricels then
if (lsairportmoney > 299 ) then
setElementPosition ( source, 1713.3214111328, -2244.8146972656, 13.546875 )
setElementRotation ( source, 135 )
takePlayerMoney ( source, 300 )
--takePlayerSaveMoney ( player, airportpricels )
else
outputChatBox ( "Du hast nicht genug Geld !", source, 255, 0, 0 )
outputChatBox ( "Du besitzt zurzeit nur "..lsairportmoney.." !", source, 255, 0, 0 )
-- outputChatBox ( "Du besitzt zurzeit nur "..Selber hinzufügen." !", source, 255, 0, 0 )
outputChatBox ( "Der Flug nach SF|LS|LV <-> LS|LV|SF kostet $300 !", source, 255, 0, 0 )
end
end
addEvent ("teleport_los_santos", true )
addEventHandler ("teleport_los_santos", getRootElement(), teleport_los_santos )
function teleport_las_venturas ( player, thePlayer )
local lvairportmoney = getPlayerMoney ( source )
--if vioGetElementData ( player, "money" ) >= airportpricelv then
if (lvairportmoney > 299 ) then
setElementPosition ( source, 1681.7264404297, 1441.6805419922, 10.772666931152 )
setElementRotation ( source, 270 )
takePlayerMoney ( source, 300 )
--takePlayerSaveMoney ( player, airportpricelv )
else
outputChatBox ( "Du hast nicht genug Geld !", source, 255, 0, 0 )
outputChatBox ( "Du besitzt zurzeit nur "..lvairportmoney.." !", source, 255, 0, 0 )
-- outputChatBox ( "Du besitzt zurzeit nur "..Selber hinzufügen.." !", source, 255, 0, 0 )
outputChatBox ( "Der Flug nach SF|LS|LV <-> LS|LV|SF kostet $300 !", source, 255, 0, 0 )
end
end
addEvent ("teleport_las_venturas", true )
addEventHandler ("teleport_las_venturas", getRootElement(), teleport_las_venturas )
function open_CHICKEN ( player )
--outputChatBox ("Das Test-Fenster wurde geöffnet", player, 0, 255, 0 )
triggerClientEvent ( player, "chicken_GUI", getRootElement() )
end
addEventHandler( "onMarkerHit", LSmarker, open_CHICKEN )
addEventHandler( "onMarkerHit", SFmarker, open_CHICKEN )
addEventHandler( "onMarkerHit", LVmarker, open_CHICKEN )
function close_CHICKEN ( player )
outputChatBox ("Das Test-Fenster wurde geschlossen", player, 255, 0, 0 )
end
--addCommandHandler ("close", close_CHICKEN )
function chicken_message ( player )
outputChatBox ("blub", player, 255, 0, 0 )
end
addEvent ("chicken_message", true )
addEventHandler ("chicken_message", getRootElement(), chicken_message )
Alles anzeigen
Mit freundlichen Grüßen
Bjoern