Jump to content

Skrypt na rozwożenie paczek lub jak kto woli towarów.


Recommended Posts

Cześć, rozpocząłem pisanie gamemodu truck i zająłem się towarami. Lecz mam problem, po wejściu do pojazdu o nazwie Roadtrain ma się pokazywać, a po wyjściu ma znikać. Problem w tym że nie znika po wyjściu z pojazdu. Daję kody, błędów nie wyświetla.

Server-side:

tir = createVehicle (515,  -1686.1357421875, 366.8349609375, 10.03125) 
naczepa = createVehicle (435, -1697.3203125, 399.306640625, 7.1796875) 
  
function showGUI(veh, costam1, costam2) 
local model=getElementModel(veh) 
    if model == 515 then 
        triggerClientEvent(source, "pokazGUI", source) 
    else 
    end 
end 
  
function hideGUI(vehicle, seat, jacked) 
triggerClientEvent(source, "schowajGUI", source) 
end 
addEventHandler("onPlayerVehicleEnter", getRootElement(), showGUI) 
addEventHandler("onPlayerVehicleExit", resourceRoot, hideGUI) 

Client-side:

tlo = guiCreateStaticImage(0.79, 0.00, 0.21, 0.15, "bckgrnd.png", true) 
guiSetAlpha(tlo, 0.69) 
towarStringLabel1 = guiCreateLabel(0.03, 0.15, 0.14, 0.14, "Towar:", true, tlo) 
guiSetFont(towarStringLabel1, "default-bold-small") 
cenaStringLabel1 = guiCreateLabel(0.03, 0.37, 0.11, 0.14, "Cena:", true, tlo) 
guiSetFont(cenaStringLabel1, "default-bold-small") 
scoreStringLabel1 = guiCreateLabel(0.03, 0.59, 0.13, 0.14, "Score:", true, tlo) 
guiSetFont(scoreStringLabel1, "default-bold-small") 
wagaStringLabel1 = guiCreateLabel(0.03, 0.78, 0.13, 0.14, "Waga:", true, tlo) 
guiSetFont(wagaStringLabel1, "default-bold-small") 
towarStringLabel2 = guiCreateLabel(0.17, 0.15, 0.50, 0.14, "", true, tlo) 
guiSetFont(towarStringLabel2, "default-bold-small") 
cenaStringLabel2 = guiCreateLabel(0.14, 0.37, 0.50, 0.14, "", true, tlo) 
guiSetFont(cenaStringLabel2, "default-bold-small") 
scoreStringLabel2 = guiCreateLabel(0.16, 0.59, 0.50, 0.14, "", true, tlo) 
guiSetFont(scoreStringLabel2, "default-bold-small") 
wagaStringLabel2 = guiCreateLabel(0.16, 0.78, 0.50, 0.14, "", true, tlo) 
guiSetFont(wagaStringLabel2, "default-bold-small") 
  
function pokazGUI() 
guiSetVisible(tlo, true) 
end 
addEvent("pokazGUI", true) 
addEventHandler("pokazGUI", root, pokazGUI) 
  
function ukryjGUI() 
guiSetVisible(tlo, false) 
end 
addEvent("schowajGUI", true) 
addEventHandler("schowajGUI", getResourceRootElement(), ukryjGUI) 
addEventHandler("onClientResourceStart", getResourceRootElement(), ukryjGUI) 

Link to comment

offtopic: nie używaj pojazdów z naczepami, obecnie nie synchronizują się prawidłowo i powodują bardzo dużo problemów, http://bugs.mtasa.com/view.php?id=1655

A odnosnie kodu... triggerujesz event "schowajGUI" na elemencie source który tak naprawde jest graczem (czyli nalezy do root), a event zabindowany jest do resourceRoot.

Inna sprawa to to, dlaczego przechwytujesz po stronie serwera onPlayerVehicleEnter/Exit tylko po to aby wywołać event po stronie klienta?

Szybiej/łatwiej/prościej byłoby przechwytywać event onClientPlayerVehicleEnter/Exit bezpośrednio po stronie klienta.

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...