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

Wysłany: 2016-02-15, 17:52


MIKAELmta







Wiek: 24
Na forum: 3978 dni
Posty: 311

Piwa: 10617

Respekt: 355,3
Respekt: 355,3Respekt: 355,3Respekt: 355,3Respekt: 355,3

Mam pytanie. We?my na przyk?ad kod na banowanie:
function banPlayerCommand theClientcommandNamebannedNamereason )
 
    -- Give the player a nice error if he doesn't have rights
    if ( hasObjectPermissionTo ( theClient, "function.banPlayer" ) ) then
        --Get player element from the name
        local bannedPlayer = getPlayerFromName ( bannedName )
 
        --Ban the player
        banPlayer ( bannedPlayer, theClient, reason )
        outputChatBox ( "ban: " .. bannedName .. " successfully banned", theClient )
 
    else
        outputChatBox ( "ban: You don't have enough permissions", theClient )
    end
 
end
addCommandHandler ( "ban", banPlayerCommand )


I jak zedytowa?, ?eby do tego doda? banowanie na czas ?

[ Dodano: 2016-02-15, 17:54 ]
Poniewa? jest to mi przydatne do wielu kod?w ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-15, 18:42


Emm

***** ***






Wiek: 32
Na forum: 3880 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6162

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .

Więcej informacji znajdziesz w Wikipedii MTA:

setTimer

Przyk?ad banowania na czas:
addCommandHandler "aban", function ( plrcmdgraczczasrodzaj, ... )
    if not isObjectInACLGroup "user."..getPlayerName plr ), aclGetGroup "Admin" ) ) then return end
    if not gracz and not rodzaj and not czas and not ... or not gracz == nil or rodzaj == nil or czas == nil then
        return outputChatBox "U?yj: /aban <gracz> <czas> <rodzaj : m,d,h> <pow?d>"plr end
    player getPlayerFromName(gracz)
    if not player then return end
    txt table.concat ( {...}, " " )
    outputChatBox "Gracz "..getPlayerName(player).." zosta?/a zbanowany/a przez "..getPlayerName(plr)..""root )
    outputChatBox "Pow?d : "..txtroot )
    if rodzaj == "m" then
        rodzaj "minut"
        czas1 czas 60
    elseif rodzaj == "d" then
        rodzaj "dni"
        czas1 czas 360
    elseif rodzaj == "h" then
        rodzaj "godzin"
        czas1 czas 60 60
    end
    outputChatBox "Czas: "..czas.." "..rodzaj..""root )
    banPlayer playertruetruetrueplrtxtczas1 )
end)


Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-15, 20:56


MIKAELmta







Wiek: 24
Na forum: 3978 dni
Posty: 311

Piwa: 10617

Respekt: 355,3
Respekt: 355,3Respekt: 355,3Respekt: 355,3Respekt: 355,3

Hmm.. chyba kumam czacz?, jeszcze to przeanalizuje.

Mam jeszcze pytanie malutkie, jak dac zamiast chatboxa to DxDrawText ?

[ Dodano: 2016-02-15, 20:59 ]
To znaczy, czy trzeba cos wiecej niz usuniecie chatboxa i wstawie tam linijki z dx ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-15, 21:19


Emm

***** ***






Wiek: 32
Na forum: 3880 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6162

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
Usuwasz chatbox'a, triggerujesz event przy banowaniu na stron? clienta, i z strony clienta dxDrawText ;)

Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-15, 21:34


MIKAELmta







Wiek: 24
Na forum: 3978 dni
Posty: 311

Piwa: 10617

Respekt: 355,3
Respekt: 355,3Respekt: 355,3Respekt: 355,3Respekt: 355,3

No.. jutro co? spr?buj? wykombinowa?.

Lec? piwka, dzi?ki :)

[ Dodano: 2016-02-15, 21:35 ]
+ R*

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-15, 21:42


Jurandovsky

Kurdebele






Wiek: 17
Na forum: 4838 dni
Posty: 915

Piwa: 2697

Respekt: 955,3
Respekt: 955,3Respekt: 955,3

Jest jeszcze jeden spos?b, co prawda wydaje si? zagmatwany, ale logiczny.

Więcej informacji znajdziesz w Wikipedii MTA:


getRealTime


Ta funkcja, a dok?adnie jej warto?? 'timestamp' zwraca sekundy od 1970 roku, mo?esz konwertowa? na sekundy d?ugo?? bana, insertowa? do mysql'a ten wynik, kolumna oczywi?cie INT, wygl?da?oby to mniejwi?cej tak :

local time = getRealTime().timestamp
local converted = convert(dlugosc_bana) -- oczywiscie funkcje convert musialbys sobie ogarnac, to s? podstawy matematyki.

time + converted

a potem przy wchodzeniu na serwer sprawdzasz czy

getRealTime().timestamp > WYNIK_Z_MYSQL

je?eli tak, to wpuszczasz go, bo ban sie skonczyl, jezeli nie, to 'kick'

Podpis
Jedyny kontakt ze mną to PW forum

Kod:


local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-16, 01:41


EseJax







Wiek: 31
Na forum: 4085 dni
Posty: 67
Nick w MP: Toffy.

Piwa: 982

Respekt: 55,3

Ostrzeżeń: 100%
Emm, skoro dajesz przyk?ad to podaj te? autora, ?a?osne z twojej strony ?e pomog?e? troch? w?a?cicielowi kodu (silipek1), dosy? minimalnie i nie poda?e? go za autora..
Nie pozdrawiam

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-16, 08:37


MIKAELmta







Wiek: 24
Na forum: 3978 dni
Posty: 311

Piwa: 10617

Respekt: 355,3
Respekt: 355,3Respekt: 355,3Respekt: 355,3Respekt: 355,3

"EseJax" napisał/a:

Emm, skoro dajesz przyk?ad to podaj te? autora, ?a?osne z twojej strony ?e pomog?e? troch? w?a?cicielowi kodu (silipek1), dosy? minimalnie i nie poda?e? go za autora..
Nie pozdrawiam


Poda? to jako przyk?ad, wi?c nie powinno by? problemu.

Postaw piwo autorowi tego posta
 

 
Tagi: jak :: dodać :: funkcji :: czas
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Jak dodać do funkcji 'na czas' 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