Compare commits

...

2 Commits

5 changed files with 50 additions and 21 deletions

View File

@ -1,11 +1,4 @@
PLAYDATE_SDK_PATH := ~/playdate
GAME := Crong
all: build
build: clean
mkdir -p build
cd src && PLAYDATE_SDK_PATH=$(PLAYDATE_SDK_PATH) $(PLAYDATE_SDK_PATH)/bin/pdc -k main.lua ../$(GAME).pdx
clean:
rm -rf $(GAME).pdx
build:
make -C src/

24
license.md Normal file
View File

@ -0,0 +1,24 @@
Copyright 2023 Anna Rose Wiggins
⚠️ WARNING! ⚠️
☢️ 😱 DO NOT USE THIS PROGRAM. 😱 ☢️
This program is not a program of honor.
No highly esteemed function is executed here.
What is here is dangerous and repulsive to us.
The danger is still present, in your time, as it was in ours,
without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.
This program is best shunned and left unused (but it is free software,
and you are welcome to redistribute it under certain conditions).
😱 ☢️ DO NOT USE THIS PROGRAM. ☢️ 😱
This program is licensed under the Sandia Message Public License,
sublicense Do What The Fuck You Want To Public License, Version 2.0.
This may be abbreviated as sandia-wtfpl.
You may obtain a copy of the License(s) at
https://github.com/cdanis/sandia-public-license/blob/main/LICENSE.md and
http://www.wtfpl.net/txt/copying/

View File

@ -5,3 +5,5 @@ This is an extremely simple game for the (Playdate)[https://play.date] handheld
This is, of course, a completely novel idea and is dissimilar from any other game ever made.
It was written as an excuse to learn the Playdate SDK, and is made available here in case it serves as a useful tool for basic object-oriented development in Playdate's LUA library.
This is a very basic Playdate game. It has no sound, no launcher card, and an extremely minimal interface. It was written as a programming exercise, so it's not likely to get any of those. If you get a hair up your ass and want to contribute a pull request, feel free.

10
src/Makefile Normal file
View File

@ -0,0 +1,10 @@
PLAYDATE_SDK_PATH := ~/playdate
GAME := Crong
all: build
build: clean
PLAYDATE_SDK_PATH=$(PLAYDATE_SDK_PATH) $(PLAYDATE_SDK_PATH)/bin/pdc -k main.lua ../$(GAME).pdx
clean:
rm -rf ../$(GAME).pdx

View File

@ -1,12 +1,12 @@
import "pixie"
class("Ball").extends(Pixie)
class("Ball", {
direction = {x=-1, y=1},
speed = 3,
}).extends(Pixie)
function Ball:init(width, height, color, x, y)
Ball.super.init(self, width, height, color, x, y)
self.dirX = -1
self.dirY = 1
self.speed = 3
return self
end
@ -15,23 +15,23 @@ function Ball:levelUp()
end
function Ball:move()
self:moveBy(self.dirX * self.speed,
self.dirY * self.speed)
self:moveBy(self.direction.x * self.speed,
self.direction.y * self.speed)
end
function Ball:setDirection(x, y)
x = x or self.dirX
y = y or self.dirY
self.dirX = x
self.dirY = y
x = x or self.direction.x
y = y or self.direction.y
self.direction.x = x
self.direction.y = y
end
function Ball:_normalizePosition()
local changeVector = Ball.super._normalizePosition(self)
if changeVector[1] ~= 0 then
self.dirX = changeVector[1]
self.direction.x = changeVector[1]
end
if changeVector[2] ~= 0 then
self.dirY = changeVector[2]
self.direction.y = changeVector[2]
end
end