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

Wysłany: 2013-06-29, 15:28


PL3ELO







Wiek: 28
Na forum: 4865 dni
Posty: 4

Piwa: 1

Respekt: 50

Witam jestem nowy w lua ale troch? podstawy znam prosz? o pomoc w zrobieniu systemu wypadk?w.Polega? by on na tym ?e dany gracz kt?ry mocno walnie w jak?? przeszkod? nie mo?e wyj?? z samochodu ani nim jecha? i pogotowie musia?o by go uleczy? je?eli nie by?o by pogotowia na serwerze musia? by czeka? 60 sekund.Za dobre odpowiedzi daje PIWO

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-06-29, 15:33


Azzeddine

Obeznany LUA






Wiek: 33
Na forum: 4921 dni
Posty: 87
Nick w MP: Azzeddine

Piwa: 17

Respekt: 50

unbind + outputchatbox + efekty

Podpis
Pomóc Ci w czymś
? - Napisz temat, jeśli będę mógł to odpiszę.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-06-29, 16:07


krisu477







Wiek: 25
Na forum: 4978 dni
Posty: 54
Nick w MP: Krisek

Piwa: 7

Respekt: 70

Ja bym u?y? do tego funkcji toggleControl ( https://wiki.multitheftauto.com/wiki/ToggleControl , control'e: enter_exit, accelerate, brake_reverse, horn, vehicle_left, vehicle_right) i efekty (przyk?adowa funkcja: fadeCamera).

Ostatnio zmieniony przez krisu477 2013-06-30, 10:56, w całości zmieniany 2 razy  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-06-29, 16:21


Riot

3X






Wiek: 30
Na forum: 5870 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

"krisu477" napisał/a:

Ja bym u?y? do tego funkcji toggleControl


I prawid?owo, Azzeddine, gada bzdury z tym unbind.

Co do kodu, kilka wskaz?wek:

#1 - onClientVehicleCollision jako event, uruchamiaj?cy si? gdy gracz autem gdzie? walnie. https://wiki.multitheftauto.com/wiki/OnClientVehicleCollision

#2 - sprawdzamy ile graczy jest w teamie za pomoca getPlayersInTeam https://wiki.multitheftauto.com/wiki/GetPlayersInTeam

#3 - gdy skrypt zwraca nam 0 graczy - tworzymy timer, kt?ry za 60 sekund sam gracza uleczy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-06-29, 21:52


PL3ELO







Wiek: 28
Na forum: 4865 dni
Posty: 4

Piwa: 1

Respekt: 50

Witam napisa?em kawa?ek kodu.
Prosz? o to kod:)
Kod:


addEventHandler("onClientVehicleCollision", root,
function(collider,force, bodyPart, x, y, z, nx, ny, nz)
if ( source == getPedOccupiedVehicle(localPlayer) ) then
local fDamageMultiplier = getVehicleHandling(source).collisionDamageMultiplier
-- Freez auta
toggleControl ( "enter_exit" , false )
toggleControl ( "accelerate" , false )
toggleControl ( "brake_reverse" , false )
-- Unfreez Auta
setTimer(unfreez, 5000, 1, root)
end
end
)

function unfreez ( root )
toggleControl ( "enter_exit" , true )
toggleControl ( "accelerate" , true )
toggleControl ( "brake_reverse" , true )

end

Nie wiem czy kod jest napisany poprawnie .Chcia?bym jeszcze ?eby wypadek tworzy? si? jak gracz mocniej walnie a nie tak jak teraz ?e tylko stuknie i jest freez. ?eby do pogo wys?a?o wiadomo?? ?e dany gracz ma wypadek a jak niema pogo to ?eby czeka? 60 sekund i samo go unfreezowa?o prosz? o pomoc w przerobieniu kodu .NIe ogarniam niekt?rych funkcji Za pomoc Daje PIWKO

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-06-29, 22:04


Riot

3X






Wiek: 30
Na forum: 5870 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

By sprawdza?o z jak? si??, to u?yj drugiego argumentu - force.
Co do kodu, wydaje si? poprawny, jednie w timerze mi co? nie gra.


Zr?b tak:

setTimer(unfreez, 5000, 1) 


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-06-30, 13:21


PL3ELO







Wiek: 28
Na forum: 4865 dni
Posty: 4

Piwa: 1

Respekt: 50

A mo?na pro?i? o edycje mojego kodu i zaopatrzenie go w to ?e jak gracz ma wypadek i jak jest kto? z pogo to wysy?a do pogotowia wiadomo?c ?e gracz o nicku jest ranny jak niema pogotowia na sererze to go leczy po 30 sekundach bardzo prosz? wysy?am kod
Kod:


addEventHandler("onClientVehicleCollision", root,
function(collider,force, bodyPart, x, y, z, nx, ny, nz)
if ( source == getPedOccupiedVehicle(localPlayer) ) then
local fDamageMultiplier = getVehicleHandling(source).collisionDamageMultiplier
-- Freez auta
toggleControl ( "enter_exit" , false )
toggleControl ( "accelerate" , false )
toggleControl ( "brake_reverse" , false )
-- Unfreez Auta
setTimer(unfreez, 5000, 1)
end
end
)

function unfreez ( root )
toggleControl ( "enter_exit" , true )
toggleControl ( "accelerate" , true )
toggleControl ( "brake_reverse" , true )

end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-06-30, 22:56


Riot

3X






Wiek: 30
Na forum: 5870 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

Ma?a poprawka, przedtem napisa?em, ?e do sprawdzenia ile graczy w teamie nale?y u?y? getPlayersInTeam - fakt, da?oby rad? jednak ?atwiej to zrobi? za pomoc? funkcji countPlayersInTeam.

Sprawdzasz ile jest graczy w temacie:
local gracze = countPlayersInTeam (getTeamFromName("Pogotowie"))
if gracze >= 1 then 
--jesli w teamie Pogotowie jest co najmniej 1 gracz
local team = getPlayersInTeam(getTeamFromName("Pogotowie"))
   for i,v in ipairs (team) do
   outputChatBox("wiadomosc dla pogotowia", v, 255, 255, 255, true)
   end
else --zero pracownikow Pogotowia
outputChatBox("wiadomosc tylko dla gracza", element, 255, 255, 255, true)
end


Kod ten jest po stronie servera, Tw?j kod natomiast po stronie clienta, dlatego pasowa?oby u?y? triggera.

Postaw piwo autorowi tego posta
 

 
Tagi: nowy :: lua :: -system :: wypadków
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Nowy w lua -System Wypadków 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