I dont fucking know how to solve this shit i hate git #3
			
				
			
		
		
		
	| 
						 | 
				
			
			@ -2,7 +2,7 @@ Arrow = Entity:New(x,y)
 | 
			
		|||
 | 
			
		||||
 function Arrow:New(x,y,rotation,speed)
 | 
			
		||||
 	local o = Entity:New(x,y)
 | 
			
		||||
 | 
			
		||||
  arrow = arrow + 1
 | 
			
		||||
 	o.pos = {x = x, y = y}
 | 
			
		||||
  o.speed = speed or 0
 | 
			
		||||
  o.sprite_rotation = rotation or 0
 | 
			
		||||
| 
						 | 
				
			
			@ -32,6 +32,7 @@ function Arrow:HandleAnimation()
 | 
			
		|||
end
 | 
			
		||||
 | 
			
		||||
function Arrow:DoPhysics()
 | 
			
		||||
  if not self.stuck then
 | 
			
		||||
     -- horizontal collisions
 | 
			
		||||
    if not isThereAnyCollisionAt(
 | 
			
		||||
      self.pos.x + self.vel.x,
 | 
			
		||||
| 
						 | 
				
			
			@ -73,4 +74,5 @@ function Arrow:DoPhysics()
 | 
			
		|||
      self.vel.y = 0
 | 
			
		||||
      self.illuminated = false
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,8 +50,8 @@ end
 | 
			
		|||
 | 
			
		||||
function Fairy:DoPhysics()
 | 
			
		||||
 | 
			
		||||
  local random_x = math.random(-0.04,0.04)
 | 
			
		||||
  local random_y = math.random(-0.04,0.04)
 | 
			
		||||
  local random_x = math.random(-4, 4)/100
 | 
			
		||||
  local random_y = math.random(-4, 4)/100
 | 
			
		||||
  self.vel.x = self.vel.x + random_x
 | 
			
		||||
  self.vel.y = self.vel.y + random_y
 | 
			
		||||
  -- move
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -69,9 +69,9 @@ function Kupo:Smart()
 | 
			
		|||
          self.bow_rotation = angle
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
      -- holding tight dispersion -- also affets arrows
 | 
			
		||||
      -- holding tight dispersion -- also affects arrows
 | 
			
		||||
      if self.bow_rotation == angle then
 | 
			
		||||
        self.bow_rotation = self.bow_rotation + math.rad(math.random(math.abs(self.bow_frame-self.bow_aim_frames-self.bow_frames)/2))
 | 
			
		||||
        self.bow_rotation = self.bow_rotation + math.rad(math.random(math.abs(math.floor(self.bow_frame-self.bow_aim_frames-self.bow_frames)/2)))
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
      -- AIMING AI
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,12 @@
 | 
			
		|||
function stepEditor()
 | 
			
		||||
  palette = palette or false
 | 
			
		||||
  AnimateTiles()
 | 
			
		||||
  if love.keyboard.isDown("tab") and not pressed then
 | 
			
		||||
    if palette then palette = false else palette = true end
 | 
			
		||||
    local pressed = true
 | 
			
		||||
  else
 | 
			
		||||
    pressed = false
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function stepGame()
 | 
			
		||||
| 
						 | 
				
			
			@ -28,6 +35,9 @@ function drawEditor()
 | 
			
		|||
  end
 | 
			
		||||
 | 
			
		||||
  gameworldDraw()
 | 
			
		||||
  if palette then
 | 
			
		||||
    paletteDraw()
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function drawGame()
 | 
			
		||||
| 
						 | 
				
			
			@ -91,3 +101,66 @@ function gameworldLighting()
 | 
			
		|||
	love.graphics.scale(1,1)
 | 
			
		||||
	DrawDarkness()
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function paletteDraw()
 | 
			
		||||
	local width = LevelData.tileset:getPixelWidth()/tileProperties.width
 | 
			
		||||
	local height = LevelData.tileset:getPixelHeight()/tileProperties.height
 | 
			
		||||
 | 
			
		||||
	local position_x = 1
 | 
			
		||||
	local position_y = 1
 | 
			
		||||
	for i = 1, #TileIndex-width-1 do
 | 
			
		||||
 | 
			
		||||
		love.graphics.draw(
 | 
			
		||||
			LevelData.tileset,
 | 
			
		||||
			TileIndex[i],
 | 
			
		||||
			position_x * tileProperties.width*2,
 | 
			
		||||
			(--[[p_scroll +]]position_y) * tileProperties.height*2,
 | 
			
		||||
			0,
 | 
			
		||||
			2,
 | 
			
		||||
			2
 | 
			
		||||
		)
 | 
			
		||||
		position_x = position_x + 1
 | 
			
		||||
 | 
			
		||||
		if position_x > width then
 | 
			
		||||
			position_x = position_x - width
 | 
			
		||||
			position_y = position_y + 1
 | 
			
		||||
		end
 | 
			
		||||
	end
 | 
			
		||||
 | 
			
		||||
	love.graphics.rectangle(
 | 
			
		||||
		"line",
 | 
			
		||||
			tileProperties.width*2,
 | 
			
		||||
			(--[[p_scroll +]] 1) * tileProperties.height*2,
 | 
			
		||||
			2*LevelData.tileset:getPixelWidth(),
 | 
			
		||||
			2*LevelData.tileset:getPixelHeight()
 | 
			
		||||
	)
 | 
			
		||||
end
 | 
			
		||||
--[[
 | 
			
		||||
function DrawSelectingPaletteTile()
 | 
			
		||||
	if selecting_tile ~= nil then
 | 
			
		||||
		local width = TileProperties.tileset:getPixelWidth()/TileProperties.width
 | 
			
		||||
		local height = TileProperties.tileset:getPixelHeight()/TileProperties.height
 | 
			
		||||
 | 
			
		||||
		local positionx = 1
 | 
			
		||||
		local positiony = 1
 | 
			
		||||
 | 
			
		||||
		for i = 1, #Tile-12 do
 | 
			
		||||
			if i == selecting_tile then
 | 
			
		||||
				love.graphics.rectangle(
 | 
			
		||||
					"line",
 | 
			
		||||
					positionx * TileProperties.width*2,
 | 
			
		||||
					(p_scroll + positiony) * TileProperties.height*2,
 | 
			
		||||
					TileProperties.width*2-1,
 | 
			
		||||
					TileProperties.height*2-1
 | 
			
		||||
				)
 | 
			
		||||
			end
 | 
			
		||||
 | 
			
		||||
			positionx = positionx + 1
 | 
			
		||||
 | 
			
		||||
			if positionx > width then
 | 
			
		||||
				positionx = positionx - width
 | 
			
		||||
				positiony = positiony + 1
 | 
			
		||||
			end
 | 
			
		||||
		end
 | 
			
		||||
	end
 | 
			
		||||
end]]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -19,6 +19,7 @@ function CreateLight(x,y,range,lum,flicker)
 | 
			
		|||
	o.flicker_speed = flicker_speed or 60/12
 | 
			
		||||
	o.flicker_time = 0
 | 
			
		||||
	table.insert(Lights,o)
 | 
			
		||||
	
 | 
			
		||||
	return o
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue