Lukkas2201 Posted October 24, 2018 Share Posted October 24, 2018 (edited) Olá, estou com um problema em uma resource minha o Erro está nesta linha, se alguem puder me ajudar agradeço de verdade!! ja tentei de tudo mas nada se resolve na verdade não é nem um erro, é um aviso, mas ele fica dando DUP toda hora, e acaba dando milhares de linha no log com esse mesmo aviso [18-10-21 19:34:48] WARNING: npc_hlc/control_npc_s.lua:31: Bad argument @ 'setElementSyncer' [Expected player at argument 2, got object] Edited October 24, 2018 by Lukkas2201 Link to comment
Jonas^ Posted October 24, 2018 Share Posted October 24, 2018 (edited) 2 hours ago, Lukkas2201 said: Olá, estou com um problema em uma resource minha o Erro está nesta linha, se alguem puder me ajudar agradeço de verdade!! ja tentei de tudo mas nada se resolve na verdade não é nem um erro, é um aviso, mas ele fica dando DUP toda hora, e acaba dando milhares de linha no log com esse mesmo aviso [18-10-21 19:34:48] WARNING: npc_hlc/control_npc_s.lua:31: Bad argument @ 'setElementSyncer' [Expected player at argument 2, got object] Você deveria ter postado a parte do código que ocorre este aviso, sem código fica bem complicado ajudar, alias você tentou traduzir pra ver o que esta ocorrendo? '' Bad argument @ 'setElementSyncer' [jogador esperado no argumento 2, objeto obtido] '' Você postou na área incorreta, área correta: Programação em Lua Edited October 24, 2018 by OverKILL Link to comment
Lukkas2201 Posted October 24, 2018 Author Share Posted October 24, 2018 2 hours ago, OverKILL said: Você deveria ter postado a parte do código que ocorre este aviso, sem código fica bem complicado ajudar, alias você tentou traduzir pra ver o que esta ocorrendo? '' Bad argument @ 'setElementSyncer' [jogador esperado no argumento 2, objeto obtido] '' Você postou na área incorreta, área correta: Programação em Lua perdão, é que sou novo e não sabia onde postar pra falar a verdade são duas linhas agora que reparei [18-10-24 11:23:57] WARNING: npc_hlc/control_npc_s.lua:66: Bad argument @ 'setElementSyncer' [Expected player at argument 2, got colshape] [DUP x16] [18-10-24 11:23:57] WARNING: npc_hlc/control_npc_s.lua:31: Bad argument @ 'setElementSyncer' [Expected player at argument 2, got colshape] UPDATE_INTERVAL_MS = 2000 -- 2000 UPDATE_INTERVAL_MS_INV = 1/UPDATE_INTERVAL_MS UPDATE_INTERVAL_S = UPDATE_INTERVAL_MS*0.001 UPDATE_INTERVAL_S_INV = 1/UPDATE_INTERVAL_S function initNPCControl() addEvent("npc_hlc:onNPCTaskDone",false) setTimer(cycleNPCs,UPDATE_INTERVAL_MS,0) end function cycleNPCs() check_cols = get("npc_hlc.server_colchecking") == "true" and "true" or nil if check_cols then server_coldata = getResourceFromName("server_coldata") if server_coldata and getResourceState(server_coldata) == "running" then call(server_coldata,"generateColData") else check_cols = nil end end for npc,exists in pairs(all_npcs) do if isHLCEnabled(npc) then local syncer = getElementSyncer(getPedOccupiedVehicle(npc) or npc) local thistask = getElementData(npc,"npc_hlc:thistask") if thistask then local task = getElementData(npc,"npc_hlc:task."..thistask) if task and #task > 0 then if task[1] == "killPed" then if not syncer and isElement ( task[2] ) then setElementSyncer ( npc, task[2] ) end end end end if syncer then if unsynced_npcs[npc] then removeNPCFromUnsyncedList(npc) end else if not unsynced_npcs[npc] then addNPCToUnsyncedList(npc) end end else if unsynced_npcs[npc] then removeNPCFromUnsyncedList(npc) end end end local this_time = getTickCount() local gamespeed = getGameSpeed() for npc,unsynced in pairs(unsynced_npcs) do if getElementHealth(getPedOccupiedVehicle(npc) or npc) >= 1 then local time_diff = (this_time-getNPCLastUpdateTime(npc))*gamespeed while time_diff > 1 do local thistask = getElementData(npc,"npc_hlc:thistask") if thistask then local task = getElementData(npc,"npc_hlc:task."..thistask) if not task then removeElementData(npc,"npc_hlc:thistask") removeElementData(npc,"npc_hlc:lasttask") break else if task[1] == "killPed" and isElement ( task[2] ) then setElementSyncer ( npc, task[2] ) removeNPCFromUnsyncedList(npc) break else local prev_time_diff,prev_task = time_diff,task time_diff = time_diff-performTask[task[1]](npc,task,time_diff) if prev_time_diff ~= time_diff then break end if time_diff > 1 then setNPCTaskToNext(npc) end end end else break end end updateNPCLastUpdateTime(npc,this_time) end end end function setNPCTaskToNext(npc) local thistask = getElementData(npc,"npc_hlc:thistask") setElementData(npc,"npc_hlc:thistask",thistask+1) end function cleanUpDoneTasks(dataname,oldval) if notrigger then return end if not oldval or dataname ~= "npc_hlc:thistask" then return end local newval = getElementData(source,dataname) if not newval then return end if newval < oldval then notrigger = true setElementData(source,dataname,oldval) notrigger = nil end for tasknum = oldval,newval-1 do local taskstr = "npc_hlc:task."..tasknum local task = getElementData(source,taskstr) if task then triggerEvent("npc_hlc:onNPCTaskDone",source,task) removeElementData(source,taskstr) end end end o erro está na linha 31 e 66 onde contém linha 31: setElementSyncer ( npc, task[2] ) linha 66 setElementSyncer ( npc, task[2] ) sim já tentei traduzir porém não consegui resolver também. Link to comment
Other Languages Moderators Lord Henry Posted October 24, 2018 Other Languages Moderators Share Posted October 24, 2018 No lugar de task[2] precisa ser obrigatoriamente um jogador, mas em vez disso você colocou uma zona de colisão. Argumento ruim @ 'setElementSyncer' [Esperava um jogador no argumento 2, mas obteve uma zona de colisão] 1 Link to comment
Lukkas2201 Posted October 25, 2018 Author Share Posted October 25, 2018 6 hours ago, Lord Henry said: No lugar de task[2] precisa ser obrigatoriamente um jogador, mas em vez disso você colocou uma zona de colisão. Argumento ruim @ 'setElementSyncer' [Esperava um jogador no argumento 2, mas obteve uma zona de colisão] então no lugar do task[2] ficaria como? player[2]? Link to comment
Other Languages Moderators Lord Henry Posted October 25, 2018 Other Languages Moderators Share Posted October 25, 2018 Não. 1 Link to comment
Lukkas2201 Posted October 25, 2018 Author Share Posted October 25, 2018 3 minutes ago, Lord Henry said: Não. poderia me dizer como ficaria então? Link to comment
Other Languages Moderators Lord Henry Posted October 25, 2018 Other Languages Moderators Share Posted October 25, 2018 Parece estar faltando parte do código. O que esse código deveria fazer? Link to comment
Lukkas2201 Posted October 25, 2018 Author Share Posted October 25, 2018 1 minute ago, Lord Henry said: Parece estar faltando parte do código. O que esse código deveria fazer? então amigo, eu também não sei, conheço o básico em programação lua, então sempre que recebo uma ajuda eu agradeço muito, não conheco muito e não tinha pra onde correr, ai vim pedir ajuda aqui no forum. Link to comment
Other Languages Moderators Lord Henry Posted October 25, 2018 Other Languages Moderators Share Posted October 25, 2018 Como vc quer corrigir algo que vc não sabe nem pra que serve? Sabe pelo menos o nome do resource? Link to comment
Lukkas2201 Posted October 25, 2018 Author Share Posted October 25, 2018 1 minute ago, Lord Henry said: Como vc quer corrigir algo que vc não sabe nem pra que serve? Sabe pelo menos o nome do resource? ah sim, a resource serve tipo para dar vida aos zombies do meu servidor, para que eles façam sua função corretamente. tinha entendido errado, me desculpe Link to comment
Other Languages Moderators Lord Henry Posted October 25, 2018 Other Languages Moderators Share Posted October 25, 2018 Fica impossível de resolver esse problema pois não existe nenhum evento ativando essas funções e também não há nenhum jogador declarado em lugar nenhum. Por se tratar de um script server-side, não dá pra pegar um jogador local pra usar na função que está dando erro. Coloque dois traços no início das linhas 31 e 66, transformando-as em comentários e verifique se o script ainda funciona normalmente. Link to comment
Lukkas2201 Posted October 25, 2018 Author Share Posted October 25, 2018 1 minute ago, Lord Henry said: Fica impossível de resolver esse problema pois não existe nenhum evento ativando essas funções e também não há nenhum jogador declarado em lugar nenhum. Por se tratar de um script server-side, não dá pra pegar um jogador local pra usar na função que está dando erro. se eu não me engano, a resource de zombies que eu tenho é fora dessa daí, ou seja, pra funcionar a zombies precisa dessa que o nome é npc_hlc, será que isso poderia ajudar? Link to comment
Other Languages Moderators Lord Henry Posted October 25, 2018 Other Languages Moderators Share Posted October 25, 2018 4 minutes ago, Lord Henry said: Coloque dois traços no início das linhas 31 e 66, transformando-as em comentários e verifique se o script ainda funciona normalmente. Link to comment
Jonas^ Posted October 26, 2018 Share Posted October 26, 2018 (edited) 21 hours ago, Lukkas2201 said: se eu não me engano, a resource de zombies que eu tenho é fora dessa daí, ou seja, pra funcionar a zombies precisa dessa que o nome é npc_hlc, será que isso poderia ajudar? Pelo que eu sei, a gamemode nativa DayZ vem com um script de zombies, e não necessita da npc_hlc pra funcionar corretamente, eu te aconselho não usar npc_hlc e usar o zombies padrão da gamemode, e fazer modificações no script padrão da gamemode. Edited October 26, 2018 by OverKILL Link to comment
DNL291 Posted October 26, 2018 Share Posted October 26, 2018 Se for só um aviso você pode corrigir colocando esse código dentro do script: local SetElementSyncer = setElementSyncer function setElementSyncer( e, player ) if e and getElementType(player) == "player" then return SetElementSyncer( e, player ) end return false end 1 Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now