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

Wysłany: 2018-11-22, 21:44


Ognisty_12877







Wiek: 24
Na forum: 2892 dni
Posty: 52
Nick w MP: Delti

Piwa: 1

Respekt: 60

Cze?? potrzebuje pomocy z dodawaniem ilosci postawionych objekt?w przez gracza, i chce ?eby t? ilo?? mia? on sam a nie wyszyscy. Ni?ej jest funkcja od dodawania i local objekty. Daje zimne piwerko


local objekty 0


        if model == 3093 then
            objekty objekty +1
        end
[size=18][/size]

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-22, 22:33


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Wykorzystaj zmienn? gracza w tabeli, przyk?ad poni?ej:

if model == 3093 then
   objekty[plr] = objekty[plr] + 1
end


Je?li Twoja zmienna si? r??ni, popraw j?.

PS. https://sjp.pwn.pl/sjp/obiekt;2491478.html

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 16:22


Ognisty_12877







Wiek: 24
Na forum: 2892 dni
Posty: 52
Nick w MP: Delti

Piwa: 1

Respekt: 60

Napisalem takie cos i tak nie dziala

local objekty0
function xx(plr)
if model == 3260 then
    objekty[plr] = objekty[plr]+1
end
end

function sprwadz(plr)
    outputChatBox("ilosc: "..objekty[plr], client)
end
addCommandHandler("sprr",sprwadz)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 17:19


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Przepraszam bardzo, co to jest?

Funkcja xx nigdy si? nie wykona - wi?c po co ona tu jest, je?li nie ma zastosowania?
Musisz zrobi? tabel? pod nazw? 'objekty'.

W komendzie masz zmienn? osoby wpisuj?cej komend? na 'plr', p??niej komunikat wy?wietlasz clientowi. To zdecyduj si?, albo client - albo plr.
Wiesz w og?le po jakiej stronie masz ten kod?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 19:01


Ognisty_12877







Wiek: 24
Na forum: 2892 dni
Posty: 52
Nick w MP: Delti

Piwa: 1

Respekt: 60

Mam inne zmienie i funkcji a kod jest po stronie serwera a do tego porostu nie dalem tu eventu. A chce po prostu zeby ta liczba po postawieniu objektu przez mnie doda?a mi +1 a innemu graczowi zostawi?o dalej 0 .

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 19:17


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Ale jak ty chcesz wykona? funkcj? 'xx', kt?ra dodaje do ilo?ci liczb? 1?

Nie ma ?adnego eventu dodanego (to go dodaj, jak sam napisa?e?).
Musisz jeszcze pami?ta? o dodaniu argumentu odno?nie ID obiektu, we funkcji 'xx' sprawdzasz owe ID obiektu.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 19:27


Ognisty_12877







Wiek: 24
Na forum: 2892 dni
Posty: 52
Nick w MP: Delti

Piwa: 1

Respekt: 60

local objekty0

function dodawanie(plr)
if model == 3260 then
    objekty[plr] = objekty[plr]+1
    if objekty[plr] >= 5 then
    outputChatBox("co?")
end
end
end
addEventHandler("PlacedObject"dodawanie)


function sprwadz(plr)
    outputChatBox("ilosc: "..objekty[plr])
end
addCommandHandler("sprr",sprwadz)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 19:33


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

- Przy komunikacie o ilo?ci obiekt?w nie ma odbiorcy.
- Nie zarejestrowa?e? w?asnego eventu. (PlacedObject)

Więcej informacji znajdziesz w Wikipedii MTA:

addEvent

- Brak zdefiniowanej zmiennej 'model' we funkcji 'dodawanie'.
- Brak odbiorcy w komunikacie "co?".
- Je?li chcia?e? zablokowa? mo?liwo?? stawiania obiekt?w je?li ju? jest ich 5, przenie? sprawdzanie wy?ej i dodaj 'return end'.
- 'objekty' u samej g?ry to dalej cyfra, zmie? j? na tabel?. (local objekty = {})

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 19:37


Ognisty_12877







Wiek: 24
Na forum: 2892 dni
Posty: 52
Nick w MP: Delti

Piwa: 1

Respekt: 60

dobra nie chce mi sie tego pisac daje kod, jest tylko z strony serwera a z clienta wysyla trigger tylko:


local maxobjectysciany[plr] = 0
function newObject(model,x,y,z,rx,ry,rz,plr)
    if model and and and and rx and ry and rz then
        local ob createObject(modelxyzrxryrz)
        local acName getAccountName(getPlayerAccount(client))
        setElementData(ob"bc.creator"acName)
        --setElementData(ob,"object.health",health)
        triggerClientEvent("setTheObjectUnbreakable",root,ob)
        local encampment getElementData(client,"Group")
        local grupa getElementData(client,"Group")
        if model == 3093 or model == 3029 then
            setupDoor(ob,encampment)
        end
        if model == 3260 then
            maxobjectysciany[plr] = maxobjectysciany[plr]+1
        end    
        if ob then
            local x,y,getElementPosition(ob)
            local rx,ry,rz getElementRotation(ob)
            local model getElementModel(ob)
            count count+1
            dbExec(db"INSERT INTO base_objects VALUES (?,?,?,?,?,?,?,?,?,?,?)"countmodelacNamexyzrxryrztostring(encampment))
        end
        if maxobjectydrzwi[plr] >= 2 then
            outputChatBox("przekroczy?es limit")
        end
    end
end
addEvent("addon.basecreator:newObject"true)
addEventHandler("addon.basecreator:newObject"rootnewObject)



function sprwadzobjekty(plr)
local ilosc maxobjectydrzwi[plr]
    outputChatBox("[DayZ] Za?adowane obiekty: "..iloscclient)
end
addCommandHandler("sprr",sprwadzobjekty)




Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-11-23, 20:18


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Ju? mo?e nie b?d? Ci? m?czy?, bo wszystko masz podane na tacy.
Sprawd? poni?szy kod, zmieni?em zmienn? tabeli z ilo?ci? obiekt?w i teraz powinno liczy? tylko dla wskazanego gracza.

local obiekty = {}
function newObject(modelxyzrxryrzplr)
    if model and and and and rx and ry and rz then
        if not obiekty[clientthen
            obiekty[client] = 0
        end    
        if obiekty[client] >= 2 then
            outputChatBox("przekroczy?es limit"client)
            return
        end    
        local ob createObject(modelxyzrxryrz)
        local acName getAccountName(getPlayerAccount(client))
        setElementData(ob"bc.creator"acName)
        --setElementData(ob,"object.health",health)
        triggerClientEvent("setTheObjectUnbreakable",root,ob)
        local encampment getElementData(client,"Group")
        local grupa getElementData(client,"Group")
        if model == 3093 or model == 3029 then
            setupDoor(ob,encampment)
        end
        if model == 3260 then
            obiekty[client] = obiekty[client]+1
        end    
        if ob then
            local x,y,getElementPosition(ob)
            local rx,ry,rz getElementRotation(ob)
            local model getElementModel(ob)
            count count+1
            dbExec(db"INSERT INTO base_objects VALUES (?,?,?,?,?,?,?,?,?,?,?)"countmodelacNamexyzrxryrztostring(encampment))
        end
    end
end
addEvent("addon.basecreator:newObject"true)
addEventHandler("addon.basecreator:newObject"rootnewObject)

function sprwadzobjekty(plr)
    local ilosc obiekty[plr]
    outputChatBox("[DayZ] Za?adowane obiekty: " .. iloscplr)
end
addCommandHandler("sprr",sprwadzobjekty)


Je?li zadzia?a, z ch?ci? przyjm? zimne piwko.

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Ognisty_12877
Wysłany: 2018-11-23, 21:57


Ognisty_12877







Wiek: 24
Na forum: 2892 dni
Posty: 52
Nick w MP: Delti

Piwa: 1

Respekt: 60

Dzieki za wszystko daje piwerko a jak bys mogl powiedziec mi jak moge pobrac range z grupy np. o nazwie founder ?

Postaw piwo autorowi tego posta
 

 
Tagi: dodawanie :: liczby :: konta :: gracza
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