require 'const' local self = {} function self.fish(x, y) local fish = { x = x, y = y, size = 0, -- 0 for small, 1 for medium, 2 for big, 3 for king eattimer = 0 + math.random() * 2, -- starts out hungry, with a 2s delay dead = false, lifetime = 0, eases = { }, render = { x = 0, y = 0, prevx = math.random() - 0.5, prevy = math.random() - 0.5, turn = math.random(), swim = 0, angle = 0, xspeed = 0, yspeed = 0, eattimer = 1, hungry = 0, deathanim = 0, } } for i = 1, FISH_SPLINE_QUALITY do table.insert(fish.eases, { -- we insert a fake ease that ends instantly and just hope the update loop replaces it with a valid, random one x = x, y = y, fromx = x, fromy = y, a = 1, speed = 1 }) end return fish end function self.food(x, y, type) local food = { x = x, y = y, speed = 0.2, time = math.random(), deathtimer = 0, type = 1 } return food end return self