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

Wysłany: 2016-02-04, 16:26


awfesa







Wiek: 29
Na forum: 4705 dni
Posty: 563

Piwa: 223

Respekt: 280
Respekt: 280Respekt: 280Respekt: 280

Mam taki problem ?e chce napisa? level system lecz nie wiem jak si? za to zabra? w LUA. Szuka?em w internecie ale s? tylko takie ?e samemu wpisujemy w kodzie od ilu do ilu jest dany level a ja chce zrobi? taki ?e serwer automatycznie stworzy levle na podstawie exp jaki gracz posiada.

Podpis

Cokolwiek robicie w swoim życiu, nie będzie to legendarne,
jeżeli wasi przyjaciele nie będą mogli tego zobaczyć.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-04, 16:48


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4261 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
Mo?esz to zrobi? poprzez


Więcej informacji znajdziesz w Wikipedii MTA:

getElementData


I potem zrobi? ?e je?eli exp >= np:1000 wtedy ma nada? level przez


Więcej informacji znajdziesz w Wikipedii MTA:

setElementData


Czyli co? takiego (nie wiem jakie masz elementdaty wi?c da?em przyk?adowe)

local exp getElementData(gracz,"exp")
local exp tonumber(exp)
if exp >= 1000 then -------- Je?eli exp jest wi?kszy lub r?wny 1000 wtedy ma wykona? 
    setElementData(gracz,"level",3) ----------- Nadaje graczowi 3 level
end


(Poda?em tobie kawa?ek kodu)

Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-04, 17:06


awfesa







Wiek: 29
Na forum: 4705 dni
Posty: 563

Piwa: 223

Respekt: 280
Respekt: 280Respekt: 280Respekt: 280

"Wicek7" napisał/a:

Mo?esz to zrobi? poprzez


Więcej informacji znajdziesz w Wikipedii MTA:

getElementData


I potem zrobi? ?e je?eli exp >= np:1000 wtedy ma nada? level przez


Więcej informacji znajdziesz w Wikipedii MTA:

setElementData


Czyli co? takiego (nie wiem jakie masz elementdaty wi?c da?em przyk?adowe)

local exp getElementData(gracz,"exp")
local exp tonumber(exp)
if exp >= 1000 then -------- Je?eli exp jest wi?kszy lub r?wny 1000 wtedy ma wykona? 
    setElementData(gracz,"level",3) ----------- Nadaje graczowi 3 level
end


(Poda?em tobie kawa?ek kodu)



Tylko ?e ja nie chce samemu doda? level ja chcia?bym aby serwer sam wyznacza? granice danego poziomu

w pawn taki kod by wygl?da? tak


Pawn


stock GetPlayerLevel(playerid)
{
    new Lvl;
    do {
        Lvl++;
    } while(Lvl*Lvl*Player[playerid][Exp]);
    return (Lvl-1) ? Lvl-1;
}



Podpis

Cokolwiek robicie w swoim życiu, nie będzie to legendarne,
jeżeli wasi przyjaciele nie będą mogli tego zobaczyć.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-04, 17:10


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4261 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
No to zrobi? timera na czas i sprawdza? wszystkich graczy co np : 30sek


Więcej informacji znajdziesz w Wikipedii MTA:

setTimer


Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-04, 17:20


awfesa







Wiek: 29
Na forum: 4705 dni
Posty: 563

Piwa: 223

Respekt: 280
Respekt: 280Respekt: 280Respekt: 280

Ale jak sprawdzi? jaki gracz ma level wed?ug exp (nie chodzi o timer tylko ood do sprawdzania lvl)

Podpis

Cokolwiek robicie w swoim życiu, nie będzie to legendarne,
jeżeli wasi przyjaciele nie będą mogli tego zobaczyć.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-04, 17:23


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4261 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
Zobacz na kod wy?ej ^

Napisa?em ?e JE?ELI gracz ma 1000exp`a to nadaje mu 3lvl

Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-04, 17:37


awfesa







Wiek: 29
Na forum: 4705 dni
Posty: 563

Piwa: 223

Respekt: 280
Respekt: 280Respekt: 280Respekt: 280

Ja nie chce samemu ustawia? granic leveli w kodzie bo przy tym jak bym chcia? mie? 1000 leveli to ... . Chce aby serwer sam wyznacza? granice leveli

Podpis

Cokolwiek robicie w swoim życiu, nie będzie to legendarne,
jeżeli wasi przyjaciele nie będą mogli tego zobaczyć.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-04, 17:43


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4261 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
Czyli chcia?by? aby np do jednego levela potrzebne jest 100exp`a ?

Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-05, 19:30


_Haze

Peace Yo!






Wiek: 24
Na forum: 4185 dni
Posty: 1648
Nick w MP: Haze

Piwa: 2628

Respekt: 1020
Respekt: 1020

dajesz SetTimer i
setElementData(plr"lvl"getElementData(plr"exp")/1000)
i co 1000expa dostajesz lvl oczywi?cie daj tam jakiego? math.floor albo math.ceil do zaokr?glania w g?re ub w d?? i ju?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-02-06, 01:22


Kronix.Cooder







Wiek: 36
Na forum: 4900 dni
Posty: 26

Piwa: 15

Respekt: 90

--[[    PAWN
stock GetPlayerLevel(playerid)
{
    new Lvl;
    do {
        Lvl++;
    } while(Lvl*Lvl*Player[playerid][Exp]);
    return (Lvl-1) ? Lvl-1;
}
]]--

--    LUA
function GetPlayerLevel(plr)
    local Exp tonumber(getElementData(plr,"Exp")) -- dostosuj zale?nie gdzie przechowujesz EXP
    local Lvl 0
    repeat
        Lvl=Lvl+1
    until not (Lvl*Lvl*Exp)
    return (Lvl-1) and or Lvl-1
end


ale ja bym proponowa? funkcje do kt?rej podajesz jako argument warto?? expa i "wypluwa" wygenerowany level czyli

function ExptoLevel(expa)
    local Exp tonumber(expa) or 0
    local Lvl 0
    repeat
        Lvl=Lvl+1
    until not (Lvl*Lvl*Exp)
    return (Lvl-1) and or Lvl-1
end


Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Qwertick
Tagi: level :: system
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






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