Wysłany: 2015-12-29, 20:56
pomaza
Wiek: 39 Na forum: 3982 dni Posty: 79
Piwa : 2
Witam mam skrypt na pozary
i mam taki blad
client.lua:7 attempt to index local 'colshape' (a userdata value)
prosze o to kod
Kod:
local fireTypes = {'fire', 'fire_med', 'fire_large'};
local fireData = {};
addEvent('attemptCreateFire', true);
addEventHandler('attemptCreateFire', root, function(colshape)
if (not colshape) or (not colshape.type == 'colshape') then return end
local posVec = colshape.position;
local effect = Effect(fireTypes[math.random(1, #fireTypes)], posVec);
fireData[colshape] = effect;
addEventHandler('onClientElementDestroy', effect, function() fireData[colshape] = nil end);
addEventHandler('onClientElementDestroy', colshape, function() fireData[colshape]:destroy(); fireData[colshape] = nil end);
end);
Bardzo prosze o pomoc poniewasz nwm co z tym zrobic.
Za pomoc daje
Wysłany: 2015-12-29, 22:04
BlackTen
LUA Dev.
Wiek: 28 Na forum: 4330 dni Posty: 698
Piwa : 2080
Nie masz zdefiniowane colshape
Wysłany: 2015-12-29, 22:25
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4149 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
local colshape = ColShape . Sphere ( x , y , z , 2 )
Co? takiego, Licze na piwko Je?li dzia?a
Wysłany: 2015-12-29, 23:09
pomaza
Wiek: 39 Na forum: 3982 dni Posty: 79
Piwa : 2
Jutro sprawdze jak by co bedzie piwko
[ Dodano : 2015-12-30, 15:47 ]
No bym sprawidzil ale mam problem z mta bo jak biore serwer na 1.5.1 to serwer sie nie wl?cza ale jak wezme na 1.5 to normalnie dodam ze to host fpsmax pomo?e ktos ?
[ Dodano : 2015-12-30, 20:57 ]
Dobra juz mam i pokazuje mi blad tera :
attempt to index global 'ColShape' (a nil value)
Wysłany: 2015-12-30, 22:42
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4149 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Dodaj opr?cz tamtego mo?e co? takiego
local colshape = createMyFire ( posVec . x , posVec . y , posVec . z );
Wysłany: 2015-12-31, 10:50
pomaza
Wiek: 39 Na forum: 3982 dni Posty: 79
Piwa : 2
Nie dziala moze ktos inny wie jak to zrobic >?
Wysłany: 2015-12-31, 11:42
mixLoLmix2
Programista
Wiek: 35 Na forum: 4113 dni Posty: 454
Nick w MP: TomeQmix
Piwa : 1915
A dale? kordy? pomaza ,
Podpis
Zajmuję się pisaniem zaawansowanych skryptów lua na zamówienie za bardzo niską cene.
Oraz pomoc przy serwerze mta/forum i tym podobnych.
Discord: TomeQmix#7106
Wysłany: 2015-12-31, 12:07
pomaza
Wiek: 39 Na forum: 3982 dni Posty: 79
Piwa : 2
o to wiecej troche kodu
Kod: local groupName = 'PSP';
--{x, y, z, 'trawa'},
local fireCoords = {
{2408.63,-1409.19,24.11,'Obok Remizy ! },
{-1631.48450,-2233.72510,31.47656,'Domku Le?nego Las SF!'},
{-2819.75391,-1630.67822,141.47678,'G?ra Chillad obok domku przy drodze ma?y lasek'},
{-1935.32434,-81.22784,25.71094,'Przejazd kolejowy Doherty SF!'},
{314.26550,-1769.42053,4.60265,'Domu Pla?a LS!'},
{-2426.08447,1532.98340,26.04688,'Na statku SF! Bay'},
{-2553.37646,629.54456,29.63732,'Pojazdu konkretnie Ambulansu Santa Flora Szpital SF'},
{-2659.78809,1419.04797,26.23772,'Dachu Klubu Battery Point SF (obok komendy SAPD)'},
{2198.07642,2479.71118,10.82031,'Stacji Benzynowej! The Emerald Isle LV!'},
{-2416.26660,-638.93677,144.39293,'Drzewa! Spawn SF (Missionary Hill)'},
{-2529.19824,-703.60870,139.32031,'Transformatora ! (Mssionary Hill stacja radiowa tam gdzie spawn sf)'},
{-2064.68628,-194.86028,35.32031,'Zieleni Osiedle Doherty SF'},
{-1588.09253,1206.16553,21.21069,'S?upa Energetycznego Esplanade East SF (obok szpitala, naprzeciwko salonu)'},
{1188.79199,-2034.27881,69.00781,'?awki Park LS (dzielnica Vedant Bluffs)'},
{-1710.19177,-994.38525,73.84789,'Lasu SF obok autostrady (obok MH)'},
{-2075.54858,167.10406,42.36030,'Drzewa, Obok domu! Osiedle sf (Doherty)'},
{-2086.65356,164.14047,40.83402,'Dachu, budynku mieszkalnego!, Osiedle sf Doherty)'},
};
addEvent('attemptDestroyFire', true);
addEvent('attemptRandomFire', true);
local function createMyFire(x, y, z)
local colshape = createColSphere(x, y, z, 2)
triggerClientEvent('attemptCreateFire', root, colshape);
return colshape;
end
local function createRandomFire()
local posID = math.random(1, #fireCoords);
for i=1,8 do
createMyFire(fireCoords[posID][1] + i, fireCoords[posID][2] + i, fireCoords[posID][3]);
createMyFire(fireCoords[posID][1] - i, fireCoords[posID][2] + i, fireCoords[posID][3]);
createMyFire(fireCoords[posID][1] + i, fireCoords[posID][2] - i, fireCoords[posID][3]);
createMyFire(fireCoords[posID][1] - i, fireCoords[posID][2] - i, fireCoords[posID][3]);
end
outputChatBox('Po?ar : '..fireCoords[posID][4])
end
Wysłany: 2015-12-31, 13:19
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4149 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Owe linijke do colshape wklej po stronie serwera
Wysłany: 2016-01-01, 10:31
pomaza
Wiek: 39 Na forum: 3982 dni Posty: 79
Piwa : 2
Wysłany: 2016-01-01, 20:36
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4149 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Tak, btw nie, ?e co? ale poprzez kopiowanie kodu z mojego tematu (Dla bezpiecze?stwa nieca?a strona server'a) Nie da?em calego kodu wi?c nie dziw si? ,?e nie dzia?a
Wysłany: 2016-01-01, 21:14
pomaza
Wiek: 39 Na forum: 3982 dni Posty: 79
Piwa : 2
chodzi ci o ten kod ... :
Kod: local fireTypes = {'fire', 'fire_med', 'fire_large'};
local fireData = {};
addEvent('attemptCreateFire', true);
addEventHandler('attemptCreateFire', root, function(colshape)
if (not colshape) or (not colshape.type == 'colshape') then return end
local posVec = colshape.position;
local effect = Effect(fireTypes[math.random(1, #fireTypes)], posVec);
fireData[colshape] = effect;
addEventHandler('onClientElementDestroy', effect, function() fireData[colshape] = nil end);
addEventHandler('onClientElementDestroy', colshape, function() fireData[colshape]:destroy(); fireData[colshape] = nil end);
end);
addEventHandler('onClientPlayerWeaponFire', localPlayer, function(wep,_,_,hitX,hitY)
if wep ~= 42 then return end
for _, v in ipairs(getElementsByType('colshape',resourceRoot)) do
local posVec = v.position;
local dist = getDistanceBetweenPoints2D(hitX,hitY,posVec.x,posVec.y);
if dist < 3 then
triggerServerEvent('attemptDestroyFire', localPlayer, v)
end
end
end);
addEventHandler('onClientResourceStart', resourceRoot, function()
triggerServerEvent('attemptRandomFire', root);
end);]
Kod: local groupName = 'PSP';
--{x, y, z, 'trawa'},
local fireCoords = {
{2408.63,-1409.19,24.11,'Obok Remizy'},
{-1631.48450,-2233.72510,31.47656,'Domku Le?nego Las SF!'},
{-2819.75391,-1630.67822,141.47678,'G?ra Chillad obok domku przy drodze ma?y lasek'},
{-1935.32434,-81.22784,25.71094,'Przejazd kolejowy Doherty SF!'},
{314.26550,-1769.42053,4.60265,'Domu Pla?a LS!'},
{-2426.08447,1532.98340,26.04688,'Na statku SF! Bay'},
{-2553.37646,629.54456,29.63732,'Pojazdu konkretnie Ambulansu Santa Flora Szpital SF'},
{-2659.78809,1419.04797,26.23772,'Dachu Klubu Battery Point SF (obok komendy SAPD)'},
{2198.07642,2479.71118,10.82031,'Stacji Benzynowej! The Emerald Isle LV!'},
{-2416.26660,-638.93677,144.39293,'Drzewa! Spawn SF (Missionary Hill)'},
{-2529.19824,-703.60870,139.32031,'Transformatora ! (Mssionary Hill stacja radiowa tam gdzie spawn sf)'},
{-2064.68628,-194.86028,35.32031,'Zieleni Osiedle Doherty SF'},
{-1588.09253,1206.16553,21.21069,'S?upa Energetycznego Esplanade East SF (obok szpitala, naprzeciwko salonu)'},
{1188.79199,-2034.27881,69.00781,'?awki Park LS (dzielnica Vedant Bluffs)'},
{-1710.19177,-994.38525,73.84789,'Lasu SF obok autostrady (obok MH)'},
{-2075.54858,167.10406,42.36030,'Drzewa, Obok domu! Osiedle sf (Doherty)'},
{-2086.65356,164.14047,40.83402,'Dachu, budynku mieszkalnego!, Osiedle sf Doherty)'},
};
addEvent('attemptDestroyFire', true);
addEvent('attemptRandomFire', true);
local function createMyFire(x, y, z)
local colshape = createColSphere(x, y, z, 2)
triggerClientEvent('attemptCreateFire', root, colshape);
return colshape;
end
local function createRandomFire()
local posID = math.random(1, #fireCoords);
for i=1,8 do
createMyFire(fireCoords[posID][1] + i, fireCoords[posID][2] + i, fireCoords[posID][3]);
createMyFire(fireCoords[posID][1] - i, fireCoords[posID][2] + i, fireCoords[posID][3]);
createMyFire(fireCoords[posID][1] + i, fireCoords[posID][2] - i, fireCoords[posID][3]);
createMyFire(fireCoords[posID][1] - i, fireCoords[posID][2] - i, fireCoords[posID][3]);
end
outputChatBox('Po?ar : '..fireCoords[posID][4])
end
addEventHandler('onColShapeHit', root, function(hitElement)
if (not hitElement.type == 'ped') and (not hitElement.dimension == source.dimension) then return end
local group = ACLGroup.get(groupName);
if not isObjectInACLGroup('user.'..hitElement.account.name, group) then
hitElement:setOnFire(true);
end
end);
addEventHandler('attemptDestroyFire', root, function(colshape)
local group = ACLGroup.get(groupName);
if not isObjectInACLGroup('user.'..source.account.name, group) then return end
if isElement(colshape) then
destroyElement(colshape);
end
local cols = #getElementsByType('colshape', resourceRoot);
if cols == 0 then
Timer(function() createRandomFire() end, 900000, 1);
end
end);
addEventHandler('attemptRandomFire', root, function()
createRandomFire();
end);
addCommandHandler('testfire', function(player)
local posVec = player.position;
local colshape = createMyFire(posVec.x, posVec.y, posVec.z);
--Timer(function() colshape:destroy(); player:outputChat('Zgaszono ogie?') end, 15000, 1);
end);
Wysłany: 2016-01-01, 22:08
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4149 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Wysłany: 2016-01-02, 11:36
Wittx
8===D
Wiek: 26 Na forum: 4794 dni Posty: 121
Nick w MP: wittula
Piwa : 1905
Kod jest mojego autorstwa, pami?tam jak wysy?a?em go Marcinowi, kordy w tablicy mia? sobie samemu uzupe?ni?. Bawicie si? w nabijanie post?w podaj?c sobie osobno w ka?dym po?cie po fragmencie kodu, bezsens. Pewnie nie macie poj?cia nawet, ?e wklejaj?c dzia?aj?cy kod nic w nim nie zmieniacie, jest pisany po prostu obiektowo.
"pomaza" napisał/a :Dobra juz mam i pokazuje mi blad tera :
attempt to index global 'ColShape' (a nil value)
Z samej tre?ci komunikatu mo?na si? domy?le?, ?e nie ma zmiennej ColShape w kodzie, a nie o zmienn? chodzi, tylko o konstruktor. (i to w?a?nie w tym momencie zapala si? ?ar?weczka, ?e zapomnieli?my doda? informacj? o tym, ?e nasz kod jest pisany obiektowo)
Dodaj to w meta.xml:
Kod:
Wysłany: 2016-01-02, 11:51
Kradus
Wiek: 28 Na forum: 4169 dni Posty: 100
Nick w MP: Salldan
Piwa : 78
local colshape = ColShape . Sphere ( x , y , z , 2 )
Ty mi powiedz co to jest. Ty si? dziwisz, ?e nie dzia?a skoro emm co? takiego no nie istnieje. Wrzu? tam:
local colshape = createColSphere ( x , y , z , 2 )
Wtedy powinien ten b??d znikn??.
Tagi: ogien
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: