function shapename(id) local names = {"Rectangle","Triangle_left","Triangle_right","Circle"} if (names[id+1] ~= nil) then return names[id+1] else return "" end end function create(type,subtype) local objs = { { {"flag", 0}, {"star", 0}, {"rotator", 0}, {"key", 0}, {"mush", 0}, {"door", 0}, {"bigstar", 1}, {"doorway", 1}, {"breakable", 1}, {"sand", 1}, {"winflag", 1}, {"cameraspot", 1}, {"mover", 0}, {"bottomedge", 1}, {"bridge", 1}, {"windmill", 1}, {"crate", 1}, {"seesaw", 0}, {"spring", 1}, {"balloon", 1}, {"mover_big", 0}, {"roller", 0}, {"bigcrate", 0}, {"bigcrate_roped", 0}, {"spring_down", 2}, {"spring_right", 2}, {"spring_left", 2}, {"bigcrate_connected", 0}, {"cratebridge", 1}, {"mover_cloud", 0}, {"OtherPengvins", 0}, {"indicator", 1}, {"firefly", 1}, {"windmillspot", 1}, {"jeka", 2}, {"glimmerspot", 1}, }, } local luatype = type + 1 local luasubtype = subtype + 1 return objs[luatype][luasubtype][1], objs[luatype][luasubtype][2] end function starhud(stars) local starpos = {} local finalstarpos = {} for i,v in ipairs(stars) do local star = mmf.newObject(v) star.values[1] = 0 table.insert(starpos, {star.x, v}) end for i,v in ipairs(starpos) do if (#finalstarpos > 0) then local amount = #finalstarpos for j=1,amount do local curr = finalstarpos[j] local currx = curr[1] if (v[1] < currx) then table.insert(finalstarpos, j, {v[1], v[2]}) end if (v[1] >= currx) and (j == amount) then table.insert(finalstarpos, {v[1], v[2]}) end end else table.insert(finalstarpos, {v[1], v[2]}) end end for i,v in ipairs(finalstarpos) do local star = mmf.newObject(v[2]) star.values[1] = i end end function copy(unitid) local unit = mmf.newObject(unitid) local newid = MF_create(unit.className) local new = mmf.newObject(newid) new.x = unit.x new.y = unit.y if (new.className == "Player_mask") or (unit.className == "Player_mask") then print("Whoa, " .. new.className .. "being copied by " .. unit.className .. "!") end for i=1,26 do new.values[i] = unit.values[i] end for i=1,10 do new.strings[i] = unit.strings[i] end end function getlevel(levelnum_) local levels = {{"Forest","level0"},{"Meadows","level6"},{"Hillside","level10"},{"Caves","level22"},{"Mountaintop","level27"}} local levelnum = levelnum_ + 1 if (levelnum > 0) then if (levels[levelnum] ~= nil) then local mix = levels[levelnum][1] .. "," .. levels[levelnum][2] return mix else return 0,0 end else return "","" end end function levelname(id) local levels = {"Forest","Meadows","Hillside","Caves","Mountaintop"} return levels[id + 1] end