Переглянути джерело

Merge pull request #5 from NiroUwU/testing

Please please end my suffering as well
tags/v0.0.6_dev
nirokay 2 роки тому
committed by GitHub
джерело
коміт
63820e69f9
Не вдалося знайти GPG ключ що відповідає даному підпису Ідентифікатор GPG ключа: 4AEE18F83AFDEB23
3 змінених файлів з 38 додано та 12 видалено
  1. +1
    -1
      data/starshipTypes.lua
  2. +3
    -1
      src/class/Planet.lua
  3. +34
    -10
      src/class/Player.lua

+ 1
- 1
data/starshipTypes.lua Переглянути файл

@@ -3,7 +3,7 @@ starshipTypes = {
orbiter = {
name = "Classic Orbiter",
description = "Dolor fugiat irure sit aliqua labore. Culpa voluptate occaecat anim exercitation proident sint ex dolor. Officia in labore sint Lorem ea. Ad minim aliqua aliqua non commodo qui in ea sit excepteur excepteur qui.",
impacttolerance = 0.5,
impacttolerance = 9999,
mass = 100000, -- idk, feels better but holy fuck thats a thicc ass boi xD
speed = 0.05,
specials = {"orbitSync"},


+ 3
- 1
src/class/Planet.lua Переглянути файл

@@ -41,7 +41,7 @@ end
-- FUNCTIONS

function Planet:getSpeed()
return math.abs(self.xSpeed) + math.abs(self.ySpeed)
return math.abs(self.xSpeed) + math.abs(self.ySpeed) + math.abs(self.orbitalY) + math.abs(self.orbitalX)
end

function Planet:updatePosition()
@@ -95,4 +95,6 @@ function Planet:draw()
local col = self.colour
love.graphics.setColor(calc.c(col[1]), calc.c(col[2]), calc.c(col[3]))
love.graphics.circle("fill", self.x, self.y, self.r)
love.graphics.setColor(0.1,0.1,0.1,0.2)
love.graphics.circle("fill", self.x, self.y, self.r*2)
end

+ 34
- 10
src/class/Player.lua Переглянути файл

@@ -9,6 +9,9 @@ function Player:init(tempX, tempY, tempT)
self.xStart = tempX
self.yStart = tempY

self.orbitalX = 0
self.orbitalY = 0

-- Speed:
self.xSpeed = 0
self.ySpeed = 0
@@ -30,9 +33,12 @@ function Player:init(tempX, tempY, tempT)

-- Status:
self.exploding = false
self.inRange = nil

--TEXTURE HERE?
self.texture = love.graphics.newImage(starshipTypes[tempT].texture)
self.width = self.texture:getWidth()
self.height = self.texture:getHeight()
end


@@ -71,7 +77,8 @@ end
function Player:reset()
self.x = self.xStart
self.y = self.yStart

self.landingspeed = 0
self.angle = calc.pi/2
self.xSpeed = 0
self.ySpeed = 0
end
@@ -142,7 +149,7 @@ function Player:flightControls()
end

function Player:getSpeed() -- absolute speed
return math.abs(self.xSpeed) + math.abs(self.ySpeed)
return math.abs(self.xSpeed) + math.abs(self.ySpeed) + math.abs(self.orbitalY) + math.abs(self.orbitalX)
end

function Player:getSpeedTo(obj) -- relative speed to an object
@@ -166,7 +173,7 @@ end
function Player:isLanded()
local landed = false
for i, p in ipairs(planet) do
if self:getOrbitHeight(p) <= 0 then
if self:getOrbitHeight(p) <= 1 then
landed = true
self.landedOn = p
debug("Player touched down on: "..p.name)
@@ -188,25 +195,39 @@ function Player:gravity()
if self:isLanded() then
-- Player is landed:
local p = self.landedOn
self.xSpeed, self.ySpeed = math.abs(p.xSpeed), math.abs(p.ySpeed)
self.xSpeed, self.ySpeed = 0, 0
end
local p = calc.closestObj(player)
if self:getOrbitHeight(p) < p.r and p.parent then
if self.inRange ~= p then
self.xSpeed = 0
self.ySpeed = 0
self.inRange = p
end
self.orbitalX = p.xSpeed + p.orbitalX
self.orbitalY = p.ySpeed + p.orbitalY
debug("Synced speed" .. self.orbitalX .. " " .. self.orbitalY .. " with " .. p.name)
else
self.inRange = nil
self.orbitalX = 0
self.orbitalY = 0
end
end

function Player:updatePosition()
self.x = self.x + self.xSpeed
self.y = self.y + self.ySpeed
self.x = self.x + self.xSpeed + self.orbitalX
self.y = self.y + self.ySpeed + self.orbitalY
end

function Player:drawTexture(x, y, r)
-- Texture offset and size
local t = {s = 50}
t.x = x - love.graphics.getPixelWidth(self.texture)/2 -- ?????????????????????????????????
t.y = y - love.graphics.getPixelHeight(self.texture)/2

-- Draw Texture
love.graphics.setColor(1, 1, 1)
love.graphics.draw(self.texture, t.x, t.y, r)
debug("Angle: "..self.angle)
love.graphics.draw(self.texture, self.x, self.y, -(self.angle-calc.pi/2), 1, 1, self.width/2, self.height/2)
--debug("Angle: "..self.angle)
end


@@ -230,7 +251,10 @@ function Player:draw()
local x, y = self.x, self.y
local dist = 10

if not self.exploding then
self:drawTexture(x, y, calc.pi/2 - self.angle)
end


if not self.exploding then
if calc.isDebug then


Завантаження…
Відмінити
Зберегти