A_RTS/scripts/levels.lua

111 lines
3.6 KiB
Lua

levels = {}
levels.main_menu = {
skybox = g3d.newModel("assets/objects/box.obj","assets/textures/misc/skybox.png", {0,0,0}, {0,0,0}, { 1000, 1000, 1000}),
entities = {},
units = {}
}
total_model_count = 0
unit_count = 0
local entities = levels.main_menu.entities
local units = levels.main_menu.units
-- grass ground
local radius = math.random(50,50)
for r1 = 0, radius, 1 do for r2= 0, radius, 1 do
local tex = math.random(1,15)
local ori = math.random(0,3)
if tex <= 1 then
tex = math.random(1,7)+1
table.insert(entities,g3d.newModel("assets/objects/ground.obj","assets/textures/ground/grass"..tex..".png", {r1-radius/2, 0.01 , r2-radius/2 }, { 0, ori*math.rad(90), 0 }, { 2, 2, 2} ) )
else
table.insert(entities,g3d.newModel("assets/objects/ground.obj","assets/textures/ground/grass1.png", {r1-radius/2, 0.01 , r2-radius/2 }, { 0, ori*math.rad(90), 0 }, { 2, 2, 2} ) )
end
end end
math.randomseed(3)
-- bunch of implings (40)
local nu = Unit:newUnit("Succubi Army",player.id,portrait._ariel,statTable.implings)
unit_count = unit_count + 1
nu.id = unit_count
local xx, yy, zz = 3, 0, 0
local model_count = 0
for i = 1, 8, 1 do for j = 1, 5, 1 do
model_count = model_count + 1
total_model_count = total_model_count + 1
-- create and define
local imp = Object:new2DAnimated("ariel",portrait._ariel,xx+0.5*(i+1),yy+0,zz+0.5*(j+1),16,16)
imp.num = model_count
imp.tnum = total_model_count
imp.unit = unit_count
load_animation(imp,animation._ariel.idle,4,8)
-- add to unit
table.insert(entities,imp)
end end
table.insert(units,nu)
--[[local nu = Unit:newUnit("Implings",player.id,portrait.impling,statTable.implings)
local xx, yy, zz = 3, 0, 3
for i = 1, 8, 1 do for j = 1, 5, 1 do
local imp = Object:new2DAnimated("implings",portrait.impling,xx+0.5*(i+1),yy+0,zz+0.5*(j+1),16,16)
load_animation(imp,animation.impling.idle,4,8)
table.insert(nu.troops,imp)
end end
table.insert(units,nu)
local nu = Unit:newUnit("Implings",player.id,portrait.impling,statTable.implings)
local xx, yy, zz = 3, 0, -3
for i = 1, 8, 1 do for j = 1, 5, 1 do
local imp = Object:new2DAnimated("implings",portrait.impling,xx+0.5*(i+1),yy+0,zz+0.5*(j+1),16,16)
load_animation(imp,animation.impling.idle,4,8)
table.insert(nu.troops,imp)
end end
table.insert(units,nu)]]
-- bunch of hellbeast pack (6)
--[[local nu = Unit:newUnit("Hellbeast Pack",player.id,portrait.hellbeast,statTable.implings)
local xx, yy, zz = -3, 0, 3
for i = 1, 3, 1 do for j = 1, 2, 1 do
local hellbeast = Object:new2DAnimated("hellbeast",portrait.hellbeast,xx+1*(i+1),yy+0,zz+1*(j+1),16,16)
load_animation(hellbeast,animation.hellbeast.idle,4,8)
table.insert(nu.troops,hellbeast)
end end
table.insert(units,nu)--
-- bunch of hellbeast pack (6)
--[[local nu = Unit:newUnit("Hellbeast Pack",player.id,portrait.hellbeast,statTable.implings)
local xx, yy, zz = -3, 0, -3
for i = 1, 3, 1 do for j = 1, 2, 1 do
local hellbeast = Object:new2DAnimated("hellbeast",portrait.hellbeast,xx+1*(i+1),yy+0,zz+1*(j+1),16,16)
load_animation(hellbeast,animation.hellbeast.idle,4,8)
table.insert(nu.troops,hellbeast)
end end
table.insert(units,nu)]]
-- create class
local nu = Unit:newUnit("Hero Azifer",player.id,portrait._yari,statTable.implings)
unit_count = unit_count + 1
nu.id = unit_count
local xx, yy, zz = 0, 0, 3
-- create and define
total_model_count = total_model_count + 1
local azifer = Object:new2DAnimated("Azifer",portrait._yari,xx,yy,zz,16,16)
azifer.num = 1
azifer.tnum = total_model_count
azifer.unit = unit_count
load_animation(azifer,animation._yari.idle,4,8)
table.insert(entities,azifer)
table.insert(units,nu)