Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require "see"
- local __old_print = print
- function print(...)
- local args = {...}
- for _,text in ipairs(args) do
- __old_print(tostring(text))
- end
- end
- dofile("sys/lua/basicfuncs.lua")
- dofile("sys/lua/space_rpg/bases.lua")
- dofile("sys/lua/space_rpg/ships.lua")
- dofile("sys/lua/space_rpg/tradelanes.lua")
- dofile("sys/lua/space_rpg/gates.lua")
- parse("mp_wpndmg Knife 0") -- Don't change this!
- faction=initArray2(32,0)
- -- MAIN VALUES
- credits=initArray2(32,2000)
- shield=initArray2(32,100)
- minhit=initArray2(32,5)
- commodities=doublearray(32,6,0)
- cargo=initArray2(32,0)
- maxcargo=initArray2(32,60)
- addhook("startround","imagestuff")
- function imagestuff()
- imagerender()
- end
- function imagerender()
- for tl=1,#lanes do
- if (lanesimg[tl]==0) then
- lanesimg[tl]=image("gfx/space/tradelane.png",lanes[tl].x*32+16,lanes[tl].y*32+16,0)
- end
- if (lanefimg[tl]==0) then
- lanefimg[tl]=image("gfx/space/tradelane.png",lanes[tl].ex*32+16,lanes[tl].ey*32+16,0)
- end
- end
- end
- imagerender()
- -- REPUTATION --
- reputation=doublearray(32,32,0)
- for f=1,#factions do
- for id=1,32 do
- reputation[id][f]=factions[f].initrep
- end
- end
- addhook("ms100","updatehud")
- function updatehud()
- for id=1,32 do
- if (player(id,"exists")) then
- hudtxt2(id,1,"255255255","Money: "..credits[id],320,380)
- hudtxt2(id,2,"255255255","Shield: "..shield[id],320,400)
- end
- end
- end
- addhook("hit","shieldhit")
- function shieldhit(id)
- if (shield[id]>=minhit[id]) then
- shield[id]=shield[id]-minhit[id]
- return 1
- end
- end
- function mainmenu(id)
- menu(id,"FREELANCER 2D@b,View Cargo Bay,View Equipment,View Reputation")
- end
- function cargomenu(id)
- menu(id,"CARGO BAY,"..comms[1].name.."|"..commodities[id][1]..","..comms[2].name.."|"..commodities[id][2]..","..comms[3].name.."|"..commodities[id][3]..","..comms[4].name.."|"..commodities[id][4]..","..comms[5].name.."|"..commodities[id][5]..","..comms[6].name.."|"..commodities[id][6])
- end
- function getRep(id,f)
- if (factions[f]~=nil) then
- return factions[f].tag.." - "..factions[f].name.."|"..reputation[id][f]
- end
- return ""
- end
- function repmenu(id)
- menu(id,"REPUTATION@b,"..getRep(id,1)..","..getRep(id,2)..","..getRep(id,3)..","..getRep(id,4)..","..getRep(id,5)..","..getRep(id,6)..","..getRep(id,7)..","..getRep(id,8)..","..getRep(id,9))
- end
- addhook("serveraction","svact")
- function svact(id,a)
- if (a==1) then
- mainmenu(id)
- end
- end
- addhook("menu","menus")
- function menus(id,menu,sel)
- if (menu=="FREELANCER 2D") then
- if (sel==1) then
- cargomenu(id)
- end
- if (sel==3) then
- repmenu(id)
- end
- end
- end
- function playerInRange(x,y,rx,ry)
- for id=1,32 do
- if (player(id,"exists") and player(id,"x")<=x+rx and player(id,"x")>=x-rx and player(id,"y")<=y+ry and player(id,"y")>=y-ry) then
- return id
- else
- return nil
- end
- end
- end
- addhook("always","attackhostiles")
- function attackhostiles()
- for id=1,32 do
- if (player(id,"exists") and player(id,"bot") and playerInRange(player(id,"x"),player(id,"y"),512,512)~=nil and reputation[playerInRange(player(id,"x"),player(id,"y"),512,512)][faction[id]]<=-25) then
- local x=player(playerInRange(player(id,"x"),player(id,"y"),512,512),"x")
- local y=player(playerInRange(player(id,"x"),player(id,"y"),512,512),"y")
- ai_aim(id,x,y)
- ai_iattack(id)
- end
- end
- end
- addhook("kill","repchange")
- function repchange(id,src)
- local allys=factions[faction[id]].allies
- local enemys=factions[faction[id]].enemies
- see(factions)
- reputation[src][faction[id]]=reputation[src][faction[id]]-1
- for _,f in ipairs(allys) do
- reputation[src][allys[f]]=reputation[src][allys[f]]-0.5
- end
- for _,f in ipairs(enemys) do
- reputation[src][enemys[f]]=reputation[src][enemys[f]]-0.5
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment