From d9daf68d2b4c9d84b1b973d2d007568fc3408eaa Mon Sep 17 00:00:00 2001 From: MaddoScientisto Date: Sun, 14 Apr 2024 21:13:54 +0200 Subject: [PATCH] Objectified player --- cirnofarm.p64 | 22 +++++++++---------- src/cirno.lua | 59 ++++++++++++++++++++++++++++++++++----------------- 2 files changed, 50 insertions(+), 31 deletions(-) diff --git a/cirnofarm.p64 b/cirnofarm.p64 index 60c9b07..c53f397 100644 --- a/cirnofarm.p64 +++ b/cirnofarm.p64 @@ -6,7 +6,7 @@ version 2 :: sfx/ :: gfx/0.gfx b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w -NC0xNCAxNToxMDoxMiIscmV2aXNpb249OTBdXWx6NABmAQAA9DEAAPMUe1swXT17Ym1wPXB4dQBD +NC0xNCAxOToxMzo0NSIscmV2aXNpb249OTldXWx6NABmAQAA9DEAAPMUe1swXT17Ym1wPXB4dQBD IBAQBPDwLGZsYWdzPTAscGFuX3gIAMp5PTAsem9vbT03fSwxAPEIrxsj3gN_A94j3gP_CRNuA04T biNOA34TAP8DjgM_A04DLiN_Iy4DngP_FAMuXQAc8AnwRU2ALSYtUB1mHQUgHYYNFQAdlh0VDaYE AMMNFQANlh0FEL0F8BNXAB8xVwAU-xVQRIAUTx8UUA8Ujx8EQC8UTx8kQA8UHx9EHgRADxReDR4E @@ -17,7 +17,7 @@ BXAFQAXwBbIAHg8xAP-----------------------------------------------4tQbT03fX0= b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixzdG9yZWQ9IjIwMjQtMDQt MDQgMDc6MTk6MzMiXV1sejQABAAAAAMAAAAwbmls :: main.lua ---[[pod_format="raw",created="2024-04-04 07:19:33",modified="2024-04-14 15:10:12",revision=152]] +--[[pod_format="raw",created="2024-04-04 07:19:33",modified="2024-04-14 19:13:45",revision=163]] --cd("/cirnofarm/src") include("/cirnofarm/src/cirno.lua") --function _init() @@ -48,19 +48,19 @@ include("/cirnofarm/src/cirno.lua") --end :: map/0.map b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w -NC0xNCAxNToxMDoxMiIscmV2aXNpb249OTddXWx6NAAyAQAA1iAAAPAIe3tibXA9dXNlcmRhdGEo -ImkxNiIsMzIDACIiMAEALzMwAQB-HzOQAP9pLzMwAQCvLzIw3AAED-QAIC8yMAEAew-EAAcPAQCQ -D7wAwA4wAg8UAcsfMvQASB8yRAAyD9gC1w-sAFUfMmwADQ-0AsgfMxwAFQ8kATgPSAABLzIwAQBo -D5AA0A-oAQkfMFwALg8BAK8fMtwAEQ8UAqwfMrwBAg8BAPMPTAENLzMwAQD-nfEYIiksaGlkZGVu -PWZhbHNlLG5hbWU9InNvbGlkIixwYW5feD0tMTE2CwDzAHk9LTE1Nix0aWxlX2g9MQoAEHcKAI96 -b29tPTF9LGoQCx8xBAD--------------------4D2oQA5ViYWNrZ3JvdW5vEBMwbBAfMGkQB1Aw -LjV9fQ== +NC0xNCAxOToxMzo0NSIscmV2aXNpb249MTA2XV1sejQAMgEAANYgAADwCHt7Ym1wPXVzZXJkYXRh +KCJpMTYiLDMyAwAiIjABAC8zMAEAfx8zkAD-aS8zMAEAry8yMNwABA-0ACAvMjABAHsPxAAHDwEA +kA_8AMAOMAIPFAHLHzL0AEgfMkQAMg-YAtcP7ABVHzJsAA0P9ALIHzMcABUPJAE4D0gAAS8yMAEA +aA_QANAP6AEJHzBcAC4PAQCvHzLcABEPFAKsHzK8AQIPAQDzD0wBDS8zMAEA-53xGCIpLGhpZGRl +bj1mYWxzZSxuYW1lPSJzb2xpZCIscGFuX3g9LTExNgsA8wB5PS0xNTYsdGlsZV9oPTEKABB3CgCP +em9vbT0xfSxqEAsfMQQA--------------------_A9qEAOVYmFja2dyb3VubxATMGwQHzBpEAdQ +MC41fX0= :: map/.info.pod b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixzdG9yZWQ9IjIwMjQtMDQt MDQgMDc6MTk6MzMiXV1sejQABAAAAAMAAAAwbmls :: sfx/0.sfx b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w -NC0xNCAxNToxMDoxMyIscmV2aXNpb249NzFdXWx6NABsAQAAkQgAAPAncHh1AAMoAAADAAQPQBAC +NC0xNCAxOToxMzo0NSIscmV2aXNpb249ODBdXWx6NABsAQAAkQgAAPAncHh1AAMoAAADAAQPQBAC DgABoAEgAqAOAA8QAA3wygECAwQFBgcAD-_QCAkKCw8MDw0PDg8PEADwAA0PEQ8SDxMPFA8VDxYP FxMA8QEPGA8ZDxoPGw8cDx0PHg8fFADxACAPIQ8iDyMPJA8lDyYPJxQA8QAoDykPKg8rDywPLQ8u Dy8UAPEAMA8xDzIPMw80DzUPNg83FAD-BTgPOQ86DzsPPA89Dz4PPwAP--D-AQDr8idaARAGDyAQ @@ -72,7 +72,7 @@ ASABIAHwAAIQAgwQASAPISABMA9A8MMPKA--8MYP_AoP-w_AD-cPDQHwCQEQBgwwAD8PD_AxABsv b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixzdG9yZWQ9IjIwMjQtMDQt MDQgMDc6MTk6MzMiXV1sejQABAAAAAMAAAAwbmls :: .info.pod -b64$LS1bW3BvZCxydW50aW1lPTUsc3RvcmVkPSIyMDI0LTA0LTE0IDE1OjEwOjEzIix3b3Jrc3Bh +b64$LS1bW3BvZCxydW50aW1lPTUsc3RvcmVkPSIyMDI0LTA0LTE0IDE5OjEzOjQ1Iix3b3Jrc3Bh Y2VzPXt7bG9jYXRpb249Im1haW4ubHVhIzIiLHdvcmtzcGFjZV9pbmRleD0xfSx7bG9jYXRpb249 ImdmeC8wLmdmeCIsd29ya3NwYWNlX2luZGV4PTJ9LHtsb2NhdGlvbj0ibWFwLzAubWFwIix3b3Jr c3BhY2VfaW5kZXg9M30se2xvY2F0aW9uPSJzZngvMC5zZngiLHdvcmtzcGFjZV9pbmRleD00fX1d diff --git a/src/cirno.lua b/src/cirno.lua index e2454c1..408d7a3 100644 --- a/src/cirno.lua +++ b/src/cirno.lua @@ -1,12 +1,37 @@ ---[[pod_format="raw",created="2024-04-14 14:05:11",modified="2024-04-14 15:22:15",revision=25]] +--[[pod_format="raw",created="2024-04-14 14:05:11",modified="2024-04-14 19:13:33",revision=31]] mouse_debug = true function _init() - x = 128 - y = 128 - speed = 2 - hflip = false - playerSpr = 64 + player={} + add(player, { + x=128, + y=128, + speed=2, + hflip=false, + spriteIndex=64, + draw=function(self) + spr(self.spriteIndex,self.x,self.y, self.hflip) + end, + update=function(self) + local col_x = self.x + local col_y = self.y + if (btn(0)) col_x -= self.speed self.hflip = true + if (btn(1)) col_x += self.speed self.hflip = false + if (btn(2)) col_y -= self.speed + if (btn(3)) col_y += self.speed + + self.x = col_x + self.y = col_y + + --if (checkCollision(col_x,col_y) == false) then + -- x = col_x + -- y = col_y + --end + end + }) + + tile_width = 16 + tile_height = 16 end function _draw() @@ -14,8 +39,10 @@ function _draw() --camera(x - 240, y - 135) drawMap() - - spr(playerSpr,x,y, hflip) + + for p in all(player) do + p:draw() + end debug_mouse() end @@ -27,22 +54,14 @@ function drawMap() end function _update() - local col_x = x - local col_y = y - if (btn(0)) col_x -= speed hflip = true - if (btn(1)) col_x += speed hflip = false - if (btn(2)) col_y -= speed - if (btn(3)) col_y += speed - - if (checkCollision(col_x,col_y) == true) then - x = col_x - y = col_y + for p in all(player) do + p:update() end - end function checkCollision(x,y) - return fget(mget(x,y),0) +return true + --return fget(mget(x/tile_width,y/tile_height),0) end function debug_mouse()