mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2026-11-11 23:54:52 +09:00
More Bug Fixes
This commit is contained in:
1 parent
c2b142d712
commit
c3428e9a22
2 files changed
+32
-9
No files matched your search
+1
-1
@@ -1 +1 @@
|
||||
entityRemoved={}entityCache={}guis={frames={},buttons={}}defaults={itemRotated={},ranks={{name='Owner',shortHand='Owner',tag='[Owner]',power=0,colour={r=170,g=0,b=0}},{name='Community Manager',shortHand='CM',tag='[Com Mngr]',power=1,colour={r=150,g=68,b=161}},{name='Developer',shortHand='Dev',tag='[Dev]',power=1,colour={r=179,g=125,b=46}},{name='Admin',shortHand='Admin',tag='[Admin]',power=2,colour={r=170,g=41,b=170}},{name='Mod',shortHand='Mod',tag='[Mod]',power=3,colour={r=233,g=63,b=233}},{name='Donator',shortHand='P2W',tag='[P2W]',power=4,colour={r=233,g=63,b=233}},{name='Member',shortHand='Mem',tag='[Member]',power=5,colour={r=24,g=172,b=188}},{name='Regular',shortHand='Reg',tag='[Regukar]',power=5,colour={r=24,g=172,b=188}},{name='Guest',shortHand='',tag='[Guest]',power=6,colour={r=255,g=159,b=27}},{name='Jail',shortHand='Jail',tag='[Jail]',power=7,colour={r=170,g=0,b=0}}},autoRanks={Owner={'badgamernl'},['Community Manager']={'arty714'},Developer={'Cooldude2606'},Admin={'eissturm','PropangasEddy'},Mod={'Alanore','Aquaday','cafeslacker','CrashKonijn','Drahc_pro','Flip','freek18','Hobbitkicker','hud','Matthias','MeDDish','Mindxt20','MottledPetrel','Mr_Happy_212','Phoenix27833','Sand3r205','ScarbVis','Smou','steentje77','TopHatGaming123'},Donator={},Member={},Regular={},Guest={},Jail={}},selected={}}warningAllowed=nil;timeForRegular=180;CHUNK_SIZE=32;function loadVar(a)if a==nil then local b=nil;if game.players[1].gui.left.hidden then b=game.players[1].gui.left.hidden.caption else b=game.players[1].gui.left.add{type='frame',name='hidden',caption=table.tostring(defaults)}.caption;game.players[1].gui.left.hidden.style.visible=false end;gTable=loadstring('return '..b)()else gTable=a end;itemRotated=gTable.itemRotated;ranks=gTable.ranks;autoRanks=gTable.autoRanks;selected=gTable.selected end;function saveVar()gTable.itemRotated=itemRotated;gTable.ranks=ranks;gTable.autoRanks=autoRanks;selected=gTable.selected;game.players[1].gui.left.hidden.caption=table.tostring(gTable)end;local function c(d,e)if d.find_entities_filtered{area=e,type="decorative"}then for f,g in pairs(d.find_entities_filtered{area=e,type="decorative"})do if g.name~="red-bottleneck"and g.name~="yellow-bottleneck"and g.name~="green-bottleneck"then g.destroy()end end end end;local function h(d,i,j,k,l)c(d,{{i,j},{i+k,j+l}})end;local function m()local d=game.surfaces["nauvis"]for n in d.get_chunks()do h(d,n.x*CHUNK_SIZE,n.y*CHUNK_SIZE,CHUNK_SIZE-1,CHUNK_SIZE-1)end;callRank("Decoratives have been removed")end;script.on_event(defines.events.on_chunk_generated,function(o)c(o.surface,o.area)end)function getRank(q)if q then for f,rank in pairs(ranks)do if q.tag==rank.tag then return rank end end;return stringToRank('Guest')end end;function stringToRank(string)if type(string)=='string'then for f,rank in pairs(ranks)do if rank.name==string then return rank end end end end;function callRank(r,rank,s)local rank=stringToRank(rank)or stringToRank('Mod')local s=s or false;for f,q in pairs(game.players)do rankPower=getRank(q).power;if s then if rankPower>=rank.power then q.print(r)end else if rankPower<=rank.power then if rank.shortHand then q.print('['..rank.shortHand..']: '..r)else q.print('[Everyone]: '..r)end end end end end;function giveRank(q,rank,t)local t=t or'system'oldRank=getRank(q)local u='demoted'if rank.power<=oldRank.power then u='promoted'end;callRank(q.name..' was '..u..' to '..rank.name..' by '..t.name,oldRank.name)q.tag=rank.tag;drawToolbar(q)drawPlayerList()end;function autoRank(q)local v=getRank(q)local w=nil;for rank,x in pairs(autoRanks)do local y=false;for f,p in pairs(x)do if q.name==p then w=stringToRank(rank)y=true;break end end;if y then break end end;if w then if v.power>w.power then q.tag=w.tag end elseif ticktominutes(q.online_time)>=timeForRegular then q.tag=stringToRank('Regular').tag end;if getRank(q).power<=3 and not q.admin then callRank(q.name..' needs to be promoted.')end end;function ticktohour(z)local A=tostring(math.floor(z/(216000*game.speed)))return A end;function ticktominutes(z)local B=math.floor(z/(3600*game.speed))return B end;function clearSelection(q)selected[q.index]={}end;function autoMessage()rank=stringToRank('Regular')hrank=stringToRank('Mod')callRank('There are '..#game.connected_players..' players online',hrank,true)callRank('This map has been on for '..ticktohour(game.tick)..' Hours and '..ticktominutes(game.tick)-60*ticktohour(game.tick)..' Minutes',hrank,true)callRank('Please join us on:',rank,true)callRank('Discord: https://discord.gg/RPCxzgt',rank,true)callRank('Forum: explosivegaming.nl',rank,true)callRank('Steam: http://steamcommunity.com/groups/tntexplosivegaming',rank,true)callRank('To see these links again goto: Readme > Server Info',rank,true)end;function table.val_to_str(C)if"string"==type(C)then C=string.gsub(C,"\n","\\n")if string.match(string.gsub(C,"[^'\"]",""),'^"+$')then return"'"..C.."'"end;return'"'..string.gsub(C,'"','\\"')..'"'else return"table"==type(C)and table.tostring(C)or toLine truncated
|
||||
entityRemoved={}entityCache={}guis={frames={},buttons={}}defaults={itemRotated={},ranks={{name='Owner',shortHand='Owner',tag='[Owner]',power=0,colour={r=170,g=0,b=0}},{name='Community Manager',shortHand='CM',tag='[Com Mngr]',power=1,colour={r=150,g=68,b=161}},{name='Developer',shortHand='Dev',tag='[Dev]',power=1,colour={r=179,g=125,b=46}},{name='Admin',shortHand='Admin',tag='[Admin]',power=2,colour={r=170,g=41,b=170}},{name='Mod',shortHand='Mod',tag='[Mod]',power=3,colour={r=233,g=63,b=233}},{name='Donator',shortHand='P2W',tag='[P2W]',power=4,colour={r=233,g=63,b=233}},{name='Member',shortHand='Mem',tag='[Member]',power=5,colour={r=24,g=172,b=188}},{name='Regular',shortHand='Reg',tag='[Regukar]',power=5,colour={r=24,g=172,b=188}},{name='Guest',shortHand='',tag='[Guest]',power=6,colour={r=255,g=159,b=27}},{name='Jail',shortHand='Jail',tag='[Jail]',power=7,colour={r=50,g=50,b=50}}},autoRanks={Owner={'badgamernl'},['Community Manager']={'arty714'},Developer={'Cooldude2606'},Admin={'eissturm','PropangasEddy'},Mod={'Alanore','Aquaday','cafeslacker','CrashKonijn','Drahc_pro','Flip','freek18','Hobbitkicker','hud','Matthias','MeDDish','Mindxt20','MottledPetrel','Mr_Happy_212','Phoenix27833','Sand3r205','ScarbVis','Smou','steentje77','TopHatGaming123'},Donator={},Member={},Regular={},Guest={},Jail={}},selected={},jail={}}warningAllowed=nil;timeForRegular=180;CHUNK_SIZE=32;function loadVar(a)if a==nil then local b=nil;if game.players[1].gui.left.hidden then b=game.players[1].gui.left.hidden.caption else b=game.players[1].gui.left.add{type='frame',name='hidden',caption=table.tostring(defaults)}.caption;game.players[1].gui.left.hidden.style.visible=false end;gTable=loadstring('return '..b)()else gTable=a end;itemRotated=gTable.itemRotated;ranks=gTable.ranks;autoRanks=gTable.autoRanks;selected=gTable.selected;jail=gTable.jail end;function saveVar()gTable.itemRotated=itemRotated;gTable.ranks=ranks;gTable.autoRanks=autoRanks;gTable.selected=selected;gTable.jail=jail;game.players[1].gui.left.hidden.caption=table.tostring(gTable)end;local function c(d,e)if d.find_entities_filtered{area=e,type="decorative"}then for f,g in pairs(d.find_entities_filtered{area=e,type="decorative"})do if g.name~="red-bottleneck"and g.name~="yellow-bottleneck"and g.name~="green-bottleneck"then g.destroy()end end end end;local function h(d,i,j,k,l)c(d,{{i,j},{i+k,j+l}})end;local function m()local d=game.surfaces["nauvis"]for n in d.get_chunks()do h(d,n.x*CHUNK_SIZE,n.y*CHUNK_SIZE,CHUNK_SIZE-1,CHUNK_SIZE-1)end;callRank("Decoratives have been removed")end;script.on_event(defines.events.on_chunk_generated,function(o)c(o.surface,o.area)end)function getRank(q)if q then for f,rank in pairs(ranks)do if q.tag==rank.tag then return rank end end;return stringToRank('Guest')end end;function stringToRank(string)if type(string)=='string'then local r={}for f,rank in pairs(ranks)do if rank.name:lower()==string:lower()then return rank end;if rank.name:lower():find(string:lower())then table.insert(r,rank)end end;if#r==1 then return r[1]end end end;function callRank(s,rank,t)local rank=stringToRank(rank)or stringToRank('Mod')local t=t or false;for f,q in pairs(game.players)do rankPower=getRank(q).power;if t then if rankPower>=rank.power then q.print(s)end else if rankPower<=rank.power then if rank.shortHand then q.print('['..rank.shortHand..']: '..s)else q.print('[Everyone]: '..s)end end end end end;function giveRank(q,rank,u)local u=u or'system'oldRank=getRank(q)local v='demoted'if rank.power<=oldRank.power then v='promoted'end;callRank(q.name..' was '..v..' to '..rank.name..' by '..u.name,oldRank.name)q.tag=rank.tag;drawToolbar(q)drawPlayerList()end;function autoRank(q)local w=getRank(q)local x=nil;for rank,y in pairs(autoRanks)do local z=false;for f,p in pairs(y)do if q.name==p then x=stringToRank(rank)z=true;break end end;if z then break end end;if x then if w.power>x.power then q.tag=x.tag end elseif ticktominutes(q.online_time)>=timeForRegular then q.tag=stringToRank('Regular').tag end;if getRank(q).power<=3 and not q.admin then callRank(q.name..' needs to be promoted.')end end;function jail(q,A)if q.character then if q.character.active then jail[q.index][1]=true;jail[q.index][2]=getRank(q).name;giveRank(q,'Jail',A)q.character.active=false else jail[q.index][1]=false;local rank=stringToRank(jail[q.index][2])or stringToRank('Guest')giveRank(q,rank,A)q.character.active=true end end end;function ticktohour(B)local C=tostring(math.floor(B/(216000*game.speed)))return C end;function ticktominutes(B)local D=math.floor(B/(3600*game.speed))return D end;function clearSelection(q)selected[q.index]={}end;function autoMessage()rank=stringToRank('Regular')hrank=stringToRank('Mod')callRank('There are '..#game.connected_players..' players online',hrank,true)callRank('This map has been on for '..ticktohour(game.tick)..' Hours and '..ticktominutes(game.tick)-60*ticktohour(game.tick)..' Minutes',hrank,true)callRank('Please join us on:',rank,true)callRank('Discord: https://discLine truncated
|
||||
+31
-8
@@ -15,7 +15,7 @@ defaults = {
|
||||
{name='Member',shortHand='Mem',tag='[Member]',power=5,colour={r=24,g=172,b=188}},
|
||||
{name='Regular',shortHand='Reg',tag='[Regukar]',power=5,colour={r=24,g=172,b=188}},
|
||||
{name='Guest',shortHand='',tag='[Guest]',power=6,colour={r=255,g=159,b=27}},
|
||||
{name='Jail',shortHand='Jail',tag='[Jail]',power=7,colour={r=170,g=0,b=0}}
|
||||
{name='Jail',shortHand='Jail',tag='[Jail]',power=7,colour={r=50,g=50,b=50}}
|
||||
},
|
||||
autoRanks={
|
||||
Owner={'badgamernl'},
|
||||
@@ -29,7 +29,8 @@ defaults = {
|
||||
Guest={},
|
||||
Jail={}
|
||||
},
|
||||
selected={}
|
||||
selected={},
|
||||
jail={}
|
||||
}
|
||||
|
||||
warningAllowed = nil
|
||||
@@ -51,13 +52,15 @@ function loadVar(t)
|
||||
ranks= gTable.ranks
|
||||
autoRanks= gTable.autoRanks
|
||||
selected= gTable.selected
|
||||
jail= gTable.jail
|
||||
end
|
||||
|
||||
function saveVar()
|
||||
gTable.itemRotated = itemRotated
|
||||
gTable.ranks = ranks
|
||||
gTable.autoRanks = autoRanks
|
||||
selected= gTable.selected
|
||||
gTable.selected= selected
|
||||
gTable.jail= jail
|
||||
game.players[1].gui.left.hidden.caption = table.tostring(gTable)
|
||||
end
|
||||
----------------------------------------------------------------------------------------
|
||||
@@ -102,9 +105,12 @@ end
|
||||
|
||||
function stringToRank(string)
|
||||
if type(string) == 'string' then
|
||||
for _,rank in pairs(ranks) do
|
||||
if rank.name == string then return rank end
|
||||
local Foundranks={}
|
||||
for _,rank in pairs(ranks) do
|
||||
if rank.name:lower() == string:lower() then return rank end
|
||||
if rank.name:lower():find(string:lower()) then table.insert(Foundranks,rank) end
|
||||
end
|
||||
if #Foundranks == 1 then return Foundranks[1] end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -157,6 +163,22 @@ function autoRank(player)
|
||||
callRank(player.name..' needs to be promoted.')
|
||||
end
|
||||
end
|
||||
|
||||
function jail(player,byplayer)
|
||||
if player.character then
|
||||
if player.character.active then
|
||||
jail[player.index][1]=true
|
||||
jail[player.index][2]=getRank(player).name
|
||||
giveRank(player,'Jail',byplayer)
|
||||
player.character.active = false
|
||||
else
|
||||
jail[player.index][1]=false
|
||||
local rank = stringToRank(jail[player.index][2]) or stringToRank('Guest')
|
||||
giveRank(player,rank,byplayer)
|
||||
player.character.active = true
|
||||
end
|
||||
end
|
||||
end
|
||||
----------------------------------------------------------------------------------------
|
||||
---------------------------Common use functions-----------------------------------------
|
||||
----------------------------------------------------------------------------------------
|
||||
@@ -355,7 +377,7 @@ script.on_event(defines.events.on_gui_click, function(event)
|
||||
if event.element.type == 'button' then
|
||||
for _,btn in pairs(guis.buttons) do
|
||||
if btn[1] == event.element.name then
|
||||
if btn[2] then btn[2](player,event.element) else game.print('Invaid Button'..btn[1]) end
|
||||
if btn[2] then btn[2](player,event.element) else callRank('Invaid Button'..btn[1],'Mod') end
|
||||
break
|
||||
end
|
||||
end
|
||||
@@ -370,6 +392,7 @@ script.on_event(defines.events.on_gui_click, function(event)
|
||||
end
|
||||
end
|
||||
end
|
||||
saveVar()
|
||||
end
|
||||
end)
|
||||
|
||||
@@ -627,7 +650,7 @@ function drawPlayerTable(player, frame, commands, select,filters)
|
||||
frame.playerTable.add{name=p.name, type="flow"}
|
||||
drawButton(frame.playerTable[p.name],'goto','Tp','Goto to the players location')
|
||||
drawButton(frame.playerTable[p.name],'bring','Br','Bring player player to your location')
|
||||
if getRank(p).power >= getRank(player).power then
|
||||
if getRank(p).power > getRank(player).power then
|
||||
drawButton(frame.playerTable[p.name],'jail','Ja','Jail/Unjail player player')
|
||||
drawButton(frame.playerTable[p.name],'kill','Ki','Kill this player')
|
||||
end
|
||||
@@ -751,7 +774,7 @@ addTab('Admin', 'Commands', 'Random useful commands',
|
||||
frame.add{type='textfield',name='range',text='Range'}
|
||||
frame.add{type='flow',name='message'}
|
||||
frame.message.add{type='textfield',name='message',text='Enter message'}
|
||||
frame.message.add{type='textfield',name='rank',text='Endter rank'}
|
||||
frame.message.add{type='textfield',name='rank',text='Enter rank'}
|
||||
drawButton(frame,'sendMessage','Send Message','Send a message to all ranks higher than the slected')
|
||||
drawButton(frame,'tp_all','TP All Here','Brings all players to you')
|
||||
end)
|
||||
|
||||
Reference in new issue
Block a user