I'm really noob at LUA, so I tried to create a new class script. But, there's a problem, I have more than 9 classes, so I tried to add a "Next" button, but it seens that it doesn't work.
PS: Please note that I tried to add a "Next" button based on the code that Symp created (Cod4 classes)
Spoiler ![>](img/i_plus.png)
![>](img/i_plus.png)
--------------------------------------------------
-- Player Classes Script by Unreal Software --
-- 28.02.2009 - www.UnrealSoftware.de --
-- Adds Player Classes to your server --
--------------------------------------------------
if sample==nil then sample={} end
sample.classes={}
-----------------------
-- INITIAL SETUP --
-----------------------
function initArray(m)
local array = {}
for i = 1, m do
array[i]=0
end
return array
end
sample.classes.class=initArray(32)
function sample.classes.classmenu(id)
menu(id,"Select your Class,Assaulter|SFOD-D,Assaulter|Alfa Group,Assaulter|GIGN,Assaulter|Gadsar Nahal,Special Ops|EKO,Special Ops|SFOD-D,Special Ops|KSK,Next")
end
-----------------------
-- TEAM -> CLASS --
-----------------------
addhook("team","sample.classes.team")
function sample.classes.team(id,team)
if (team>0) then
sample.classes.classmenu(id)
end
end
-----------------------
-- SERVERACTION --
-----------------------
addhook("serveraction","sample.classes.serveraction")
function sample.classes.serveraction(id)
sample.classes.classmenu(id)
end
-----------------------
-- CLASS SELECTION --
-----------------------
addhook("menu","sample.classes.menu")
function sample.classes.menu(id,menu,sel)
if (menu=="Select your Class") then
if (sel>=1 and sel<=8) then
sample.classes.class[id]=sel
if (player(id,"health")>0) then
parse("killplayer "..id)
end
elseif (sel==9) then
menu(id,"Select your class-Page2,Special Ops|FSLK200,Special Ops|SFG,Sniper|Long Range,Pointman|Heavy Hitters,Demolition|Tank Stance,Heavy Gunner|Bipod,Back")
end
end
if (menu=="Select your class-Page2") then
if (sel>=1 and sel<=9) then
sample.classes.class[id]=sel+9
if (player(id,"health")>0) then
parse("killplayer "..id)
end
elseif (sel==6) then
menu(id,"Select your Class,Assaulter|SFOD-D,Assaulter|Alfa Group,Assaulter|GIGN,Assaulter|Gadsar Nahal,Special Ops|EKO,Special Ops|SFOD-D,Special Ops|KSK,Next")
end
end
end
-----------------------
-- SPAWN --
-----------------------
addhook("spawn","sample.classes.spawn")
function sample.classes.spawn(id)
-- Assaulter|SFOD-D
if (sample.classes.class[id]<=1) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "32,3,51";
end
-- Assaulter|Alfa Group
if (sample.classes.class[id]==2) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "30,4,51";
end
-- Assaulter|GIGN
if (sample.classes.class[id]==3) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
return "39,1,51";
end
-- Assaulter|Gadsar Nahal
if (sample.classes.class[id]==4) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
return "38,5,51";
end
-- Special Ops|EKO
if (sample.classes.class[id]==5) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "21,1,51";
end
-- Special Ops|SFOD-D
if (sample.classes.class[id]==6) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
return "23,3,51";
end
-- Special Ops|KSK
if (sample.classes.class[id]==7) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "20,1,51";
end
-- Next
if (sample.classes.class[id]==8) then
end
end
-----------------------
-- NO BUYING --
-----------------------
addhook("buy","sample.classes.buy")
function sample.classes.buy()
return 1
end
-----------------------
-- NO COLLECTING --
-----------------------
addhook("walkover","sample.classes.walkover")
function sample.classes.walkover(id,iid,type)
if (type>=61 and type<=68) then
return 0
end
return 1
end
-----------------------
-- NO DROPPING --
-----------------------
addhook("drop","sample.classes.drop")
function sample.classes.drop()
return 1
end
-----------------------
-- NO DEAD DROPPING --
-----------------------
addhook("die","sample.classes.die")
function sample.classes.die()
return 1
end
-- Player Classes Script by Unreal Software --
-- 28.02.2009 - www.UnrealSoftware.de --
-- Adds Player Classes to your server --
--------------------------------------------------
if sample==nil then sample={} end
sample.classes={}
-----------------------
-- INITIAL SETUP --
-----------------------
function initArray(m)
local array = {}
for i = 1, m do
array[i]=0
end
return array
end
sample.classes.class=initArray(32)
function sample.classes.classmenu(id)
menu(id,"Select your Class,Assaulter|SFOD-D,Assaulter|Alfa Group,Assaulter|GIGN,Assaulter|Gadsar Nahal,Special Ops|EKO,Special Ops|SFOD-D,Special Ops|KSK,Next")
end
-----------------------
-- TEAM -> CLASS --
-----------------------
addhook("team","sample.classes.team")
function sample.classes.team(id,team)
if (team>0) then
sample.classes.classmenu(id)
end
end
-----------------------
-- SERVERACTION --
-----------------------
addhook("serveraction","sample.classes.serveraction")
function sample.classes.serveraction(id)
sample.classes.classmenu(id)
end
-----------------------
-- CLASS SELECTION --
-----------------------
addhook("menu","sample.classes.menu")
function sample.classes.menu(id,menu,sel)
if (menu=="Select your Class") then
if (sel>=1 and sel<=8) then
sample.classes.class[id]=sel
if (player(id,"health")>0) then
parse("killplayer "..id)
end
elseif (sel==9) then
menu(id,"Select your class-Page2,Special Ops|FSLK200,Special Ops|SFG,Sniper|Long Range,Pointman|Heavy Hitters,Demolition|Tank Stance,Heavy Gunner|Bipod,Back")
end
end
if (menu=="Select your class-Page2") then
if (sel>=1 and sel<=9) then
sample.classes.class[id]=sel+9
if (player(id,"health")>0) then
parse("killplayer "..id)
end
elseif (sel==6) then
menu(id,"Select your Class,Assaulter|SFOD-D,Assaulter|Alfa Group,Assaulter|GIGN,Assaulter|Gadsar Nahal,Special Ops|EKO,Special Ops|SFOD-D,Special Ops|KSK,Next")
end
end
end
-----------------------
-- SPAWN --
-----------------------
addhook("spawn","sample.classes.spawn")
function sample.classes.spawn(id)
-- Assaulter|SFOD-D
if (sample.classes.class[id]<=1) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "32,3,51";
end
-- Assaulter|Alfa Group
if (sample.classes.class[id]==2) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "30,4,51";
end
-- Assaulter|GIGN
if (sample.classes.class[id]==3) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
return "39,1,51";
end
-- Assaulter|Gadsar Nahal
if (sample.classes.class[id]==4) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
return "38,5,51";
end
-- Special Ops|EKO
if (sample.classes.class[id]==5) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "21,1,51";
end
-- Special Ops|SFOD-D
if (sample.classes.class[id]==6) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
return "23,3,51";
end
-- Special Ops|KSK
if (sample.classes.class[id]==7) then
parse ("setmaxhealth "..id.." 100")
parse ("setarmor "..id.." 100")
parse ("speedmod "..id.." 0")
return "20,1,51";
end
-- Next
if (sample.classes.class[id]==8) then
end
end
-----------------------
-- NO BUYING --
-----------------------
addhook("buy","sample.classes.buy")
function sample.classes.buy()
return 1
end
-----------------------
-- NO COLLECTING --
-----------------------
addhook("walkover","sample.classes.walkover")
function sample.classes.walkover(id,iid,type)
if (type>=61 and type<=68) then
return 0
end
return 1
end
-----------------------
-- NO DROPPING --
-----------------------
addhook("drop","sample.classes.drop")
function sample.classes.drop()
return 1
end
-----------------------
-- NO DEAD DROPPING --
-----------------------
addhook("die","sample.classes.die")
function sample.classes.die()
return 1
end