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

Wysłany: 2015-12-03, 20:48


Emm

***** ***






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

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
Posiadam taki oto kodzik. Wszystko ?miga, ale po pierwsze - po wyj?ciu z serwera gracz jest odciszony jak wejdzie ponownie, po drugie jak dam np. /amute Emm 1 m test to po 1 m dalej mam mute, po prostu nie usuwa mute.
Mo?e dla niekt?rych b?ahe problemy, ale mi stwarzaj? problem ;d
Z g?ry dzi?ki za wszelk? pomoc



addCommandHandler ( "amute", function ( plr, cmd, gracz, czas, rodzaj, ... )
    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: /amute <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 wyciszony/a przez "..getPlayerName(plr).."", root )
    outputChatBox ( "Pow?d : "..txt, root )
    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 )
    setPlayerMuted ( player, czas1 )
    outputServerLog("MUTE: Gracz "..getPlayerName(player).." zosta? wyciszony przez "..getPlayerName(plr).."")
    outputServerLog("MUTE: POW?D: " ..txt.. ". CZAS: " ..czas.. " " ..rodzaj.. "")
end)

[size=18][/size]

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-12-03, 21:37


#404







Wiek: 27
Na forum: 4913 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
Emm, w funkcji setPlayerMuted nie istnieje czas, po prostu 2 argument to true/false okre?laj?ce czy ma by? gracz wyciszony, czy nie.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-12-03, 23:31


Emm

***** ***






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

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
Czy jest jaka? forma obejscia tego? Np. setPlayerMuted(plr, true), setTimer do tego i po uplywie czasu setPlayerMuted(plr, false)

Sry za orto ale pisze z tel

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: 2015-12-04, 00:33


#404







Wiek: 27
Na forum: 4913 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
Emm, tak, w?a?nie poprzez timer, ale proponuj? doda? zapis do konta czasu (accountDaty tak zwane) pobranego z np getTickCount() i obliczanie czy czas min??, a je?eli nie to mutowanie gracza na pozosta?y czas kt?ry mo?esz obliczy? odejmuj?c obecny czas pobrany za pomoc? getTickCount() od tego pobranego z accountDaty.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-12-04, 01:22


dudeks







Wiek: 32
Na forum: 6717 dni
Posty: 171

Piwa: 89

Respekt: 105,3
Respekt: 105,3

Przypisa? do konta okre?lony czas i przy wiadomo?ci wysy?anej na czat sprawdzi?, czy czas mute przemina?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-12-04, 07:17


Emm

***** ***






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

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
Dobra, popr?buj? i dam zna?.

[ Dodano: 2015-12-04, 16:36 ]
Ma by? co? na ten wz?r? Pierw ogarn? jedn? rzecz, potem pobawie si? ze sprawdzaniem
addCommandHandler ( "amute", function ( plr, cmd, gracz, czas, rodzaj, ... )
    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: /amute <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 wyciszony/a przez "..getPlayerName(plr).."", root )
    outputChatBox ( "Pow?d : "..txt, root )
    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 )
    setPlayerMuted ( player, true )
    outputServerLog("MUTE: Gracz "..getPlayerName(player).." zosta? wyciszony przez "..getPlayerName(plr).."")
    outputServerLog("MUTE: POW?D: " ..txt.. ". CZAS: " ..czas.. " " ..rodzaj.. "")
setTimer(setPlayerMuted(player, true), czas1)
setPlayerMuted(player, false)
end)






Takie co? mi nie dzia?a
Kod:

[2015-12-04 16:35] WARNING: banowanie/mute.lua:24: Bad argument @ 'setTimer' [Expected function at argument 1, got boolean]


[ Dodano: 2015-12-16, 16:54 ]
I jak? prosz? o pomoc ;/

[ Dodano: 2015-12-16, 16:57 ]
"DestroY" napisał/a:

Emm, tak, w?a?nie poprzez timer, ale proponuj? doda? zapis do konta czasu (accountDaty tak zwane) pobranego z np getTickCount() i obliczanie czy czas min??, a je?eli nie to mutowanie gracza na pozosta?y czas kt?ry mo?esz obliczy? odejmuj?c obecny czas pobrany za pomoc? getTickCount() od tego pobranego z accountDaty.

I jak? Prosz? o pomoc ;//

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-12-16, 17:06


#404







Wiek: 27
Na forum: 4913 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
Sorka, niestety ale pisanie kolejnych post?w pod sob? nie ustawia tematu jako nieprzeczytanego, wybacz za p??n? reakcj?, o temacie przypomnia?em sobie na dobr? spraw? gdy dosta?em pw.


addCommandHandler ( "amute", function ( plr, cmd, gracz, czas, rodzaj, ... )
    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: /amute <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 wyciszony/a przez "..getPlayerName(plr).."", root )
    outputChatBox ( "Pow?d : "..txt, root )
    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 )
    setPlayerMuted ( player, true )
    outputServerLog("MUTE: Gracz "..getPlayerName(player).." zosta? wyciszony przez "..getPlayerName(plr).."")
    outputServerLog("MUTE: POW?D: " ..txt.. ". CZAS: " ..czas.. " " ..rodzaj.. "")
setTimer(setPlayerMuted, czas1*1000, 1, player, false)
account = getPlayerAccount(player)
if not account then return end
setAccountData(account, "DoKiedyMute", (getTickCount() + (czas1 * 1000)))
end)

addEventHandler("onPlayerLogin", root, function(_,current)
accData = getAccountData(current, "DoKiedyMute")
if not accData then return end

if accData > getTickCount() then
setAccountData(current, "DoKiedyMute", false)
else
setPlayerMuted(source, true)
setTimer(setPlayerMuted, accData - getTickCount(),1,source, false)
end
end
)



Co? takiego mi si? wydaj?, ?e powinno dzia?a?.

Postaw piwo autorowi tego posta
 

 
Tagi: setplayermute
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » setPlayerMute 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