Jump to content

Crear sistema de zombies


Soren

Recommended Posts

Posted

Hola a todos, Busco como hacer un sistema de zombies con slothbot por que el de slothman es muy muy muy laggoso y muy feo asi que quiero hacerlo con slothbot, e visto que en el map editor ocn el recuerso de slothbot puedes poner unas banderas, alguna forma de poner que spawneen 10 zombies de cada bandera?

Posted
Hola a todos, Busco como hacer un sistema de zombies con slothbot por que el de slothman es muy muy muy laggoso y muy feo asi que quiero hacerlo con slothbot, e visto que en el map editor ocn el recuerso de slothbot puedes poner unas banderas, alguna forma de poner que spawneen 10 zombies de cada bandera?

Pues, es complejo el slothbot, y los zombies del del ZDay laggosos?? eso no es problema del script, busca un mejor proveedor de hosting...

Posted
Por lo menos crees poderme ayudar un poco?

ok, sabes usar las funciones call??

call ( getResourceFromName ( "resource" ), "exportedFunction", 1, "2", "three" ) 

y tambien podes usar esto:

Slothman/Slothbot --La seccion Wiki del resource 
spawnBot --la funcion de aparecer al bot 

y respecto a lo de las banderas creo que debes usar los EDF, en el map editor, en Map Definitions eliges SlothBots y lo agregas, creo que eso se usa para las banderas...

Posted (edited)

No se usar las funciones de call. :S

function spawnSlothBot(thePlayer, cmd, skin, weapon, mode, rot, team) 
    local x, y, z = getElementPosition (thePlayer) 
    local rot = tonumber(10) 
    local team = getTeamFromName(team) 
    local int = getElementInterior(thePlayer) 
    local dim = getElementDimension(thePlayer) 
    local weapon = tonumber( 0) 
    local skin = tonumber( 22, 21, 23) 
    exports["slothbot"]:spawnBot( x, y+7, z+3, rot, skin, int, dim, nil, 0, hunt, true ) 
end 
addCommandHandler ( "spawnbot", spawnSlothBot ) 

Edited by Guest
Posted
No se usar las funciones de call. :S
function spawnSlothBot(thePlayer, cmd, skin, weapon, mode, rot, team) 
    local x, y, z = getElementPosition (thePlayer) 
    local rot = tonumber(rot) or 0 
    local team = getTeamFromName(team) 
    local int = getElementInterior(thePlayer) 
    local dim = getElementDimension(thePlayer) 
    local weapon = tonumber(weapon) or 0 
    local skin = tonumber( 22, 21, 23) 
call ( getResourceFromName ( "slothbot" ), "spawnBot", x, y+7, z, rot, team, int, dim, nil, 0, hunt, true ) 
  
end 
addCommandHandler ( "spawnbot", spawnSlothBot ) 

Posted
No se usar las funciones de call. :S
function spawnSlothBot(thePlayer, cmd, skin, weapon, mode, rot, team) 
    local x, y, z = getElementPosition (thePlayer) 
    local rot = tonumber(rot) or 0 
    local team = getTeamFromName(team) 
    local int = getElementInterior(thePlayer) 
    local dim = getElementDimension(thePlayer) 
    local weapon = tonumber(weapon) or 0 
    local skin = tonumber( 22, 21, 23) 
call ( getResourceFromName ( "slothbot" ), "spawnBot", x, y+7, z, rot, team, int, dim, nil, 0, hunt, true ) 
  
end 
addCommandHandler ( "spawnbot", spawnSlothBot ) 

Creo, no estoy seguro...

Posted

rot = rotation? ha que pregunta tan noob :S, esperare a Solid a ver que me dice sobre eso, y una pregunta mas, eso se supone que solo spawnee 1 como hago que spawnee 10?

Posted
rot = rotation? ha que pregunta tan noob :S, esperare a Solid a ver que me dice sobre eso, y una pregunta mas, eso se supone que solo spawnee 1 como hago que spawnee 10?

no lo se, jamas he intentado mas de uno, lo q si es q se spawnearian uno sobre el otro, intenta poniendo el mismo comando en 10 funciones diferentes con coordenadas diferentes

Posted
  
  
function spawnSlothBot(thePlayer, cmd) 
    local x, y, z = getElementPosition (thePlayer) 
    local rot = 0 
    local int = getElementInterior(thePlayer) 
    local dim = getElementDimension(thePlayer) 
    local weapon = tonumber(weapon) or 0 
    local skin = tonumber( 22, 21, 23) 
    for i = 1,10 do 
call ( getResourceFromName ( "slothbot" ), "spawnBot", x+i, y+i, z, rot) 
  
 end 
end 
addCommandHandler ( "spawnbot", spawnSlothBot ) 

Probate eso, van apareciendo uno por uno xD. Puse x + i , y + i para que salgan un poco mas esparcido

EDIT : saque el arma y todo eso, para testearlo rapido y comprabar que spawneaban los 10. Vos ponelo a tu gusto :):)

Posted
  
  
function spawnSlothBot(thePlayer, cmd) 
    local x, y, z = getElementPosition (thePlayer) 
    local rot = 0 
    local int = getElementInterior(thePlayer) 
    local dim = getElementDimension(thePlayer) 
    local weapon = tonumber(weapon) or 0 
    local skin = tonumber( 22, 21, 23) 
    for i = 1,10 do 
call ( getResourceFromName ( "slothbot" ), "spawnBot", x+i, y+i, z, rot) 
  
 end 
end 
addCommandHandler ( "spawnbot", spawnSlothBot ) 

Probate eso, van apareciendo uno por uno xD. Puse x + i , y + i para que salgan un poco mas esparcido

EDIT : saque el arma y todo eso, para testearlo rapido y comprabar que spawneaban los 10. Vos ponelo a tu gusto :):)

No debemos borrar nada mas que lo de las armas, por que lo demas si es importante.

El poner el i al x y y hara que no spawneeen igual cierto?

Eso spawnee 10? o que tengo que hacer para que spawnee 10?

Posted

Mira probalo lo que hace es lo siguiente

Spawnea uno por uno, SOLAMENTE escriendo el comando una vez... Y spawnean todos en un x,y diferente (pero todos al lado)

Porque el i va desde el 1 al 10.

Posted
Puedo cambiar el commandHandler por un EventHandler?

Si claramente, pero tene en cuenta esto...

Si lo cambias, hay dos temas...

1) Acordate de asignarle los datos, osea antes podia poner /spawnbot + team + weapon ,etc...

Si lo pones en evento, directamente pones lo que queres que tenga el bot..

2) Dependiendo el evento, tendras que usar el source (igual decime que evento queres usar, asi se como va).

Posted
  
function spawnSlothBot(thePlayer, cmd) 
    local x, y, z = 0,0,0 -- Aca pones donde queres que spawneen los bots 
    local rot = 0 -- La Rotacion 
    local int = 0 -- Interior 
    local dim = 0 -- Dimension 
    local weapon = 0 -- Arma 
    local skin = math.random(math.floor(21,23)) -- Entre 21 y 23 el skin 
    local theTeam = custom --El que quieras 
    for i = 1,10 do 
call ( getResourceFromName ( "slothbot" ), "spawnBot", x+i, y+i, z, rot,skin,int,dim,theTeam,weapon) -- Y pongo x + i, y + i para que no aparezcan todos juntos 
  
 end 
end 
addEventHandler("onResourceStart",getRootElement(),spawnSlothBot) 

Fijate si va

Posted

  • [2012-04-06 17:32:32] Starting di_zombies
    [2012-04-06 17:32:32] WARNING: di_zombies\server.lua:2: Bad 'element' pointer @ 'getElementPosition'(1)
    [2012-04-06 17:32:32] WARNING: di_zombies\server.lua:4: Bad 'element' pointer @ 'getElementInterior'(1)
    [2012-04-06 17:32:32] WARNING: di_zombies\server.lua:5: Bad 'element' pointer @ 'getElementDimension'(1)
    [2012-04-06 17:32:32] ERROR: di_zombies\server.lua:9: attempt to perform arithmetic on local 'x' (a boolean value)
    [2012-04-06 17:32:32] start: Resource 'di_zombies' started

function spawnSlothBot(thePlayer, cmd) 
    local x, y, z = getElementPosition (thePlayer) 
    local rot = 0 
    local int = getElementInterior(thePlayer) 
    local dim = getElementDimension(thePlayer) 
    local weapon = tonumber(weapon) or 0 
    local skin = math.random(math.floor(21,23)) -- Entre 21 y 23 el skin 
    for i = 1,10 do 
call ( getResourceFromName ( "slothbot" ), "spawnBot", x+i, y+i, z, rot, skin, int, dim, nil, weapon) 
  
 end 
end 
addEventHandler("onResourceStart",getRootElement(),spawnSlothBot) 

Posted

Es que no entiendo para que queres que sea un evento y no un comando??

Porque al fin y al cabo queres que aparezca al lado suyo...

Osea podes usar "onPlayerJoin" (ni bien entra se les spawnea los bots) o sino crear un evento.

Ponele :

Client Side

addEventHandler("onClientResourceStart",root, 
  
function() 
  
triggerServerEvent("onSpawnSlothBot",localPlayer) -- ahi el source es el localPlayer 
  
end 
) 
  

Server Side

  
function onSpawnSlothBot() 
    local x, y, z = getElementPosition (source) 
    local rot = 0 
    local int = getElementInterior(source) 
    local dim = getElementDimension(source) 
    local weapon =  0 
    local skin = math.random(math.floor(21,23)) -- Entre 21 y 23 el skin 
    for i = 1,10 do 
call ( getResourceFromName ( "slothbot" ), "spawnBot", x+i, y+i, z, rot, skin, int, dim, nil, weapon) 
  
 end 
end 
addEvent("onSpawnSlothBot",true) 
addEventHandler("onSpawnSlothBot",getRootElement(),onSpawnSlothBot) 
  

Posted
function onSpawnSlothBot() 
    local x, y, z = getElementPosition (source) 
    local rot = 0 
    local int = getElementInterior(source) 
    local dim = getElementDimension(source) 
    local weapon =  0 
    local skin = math.random(math.floor(21,23)) -- Entre 21 y 23 el skin 
    for i = 1,10 do 
        call(getResourceFromName("slothbot"), "spawnBot", x+i, y+i, z, rot, skin, int, dim, nil, weapon) 
  
 end 
end 
addEvent("onSpawnSlothBot",true) 
addEventHandler("onSpawnSlothBot",getRootElement(),onSpawnSlothBot) 

Posted

Che si te digo que lo testeo, y me sale los 10 bots cuando empieza el resource...es que error no hay, a menos que que te olvidaste de poner el slothbot en marcha...O pusiste mal el meta, nidea

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...