weapon cooldown

This commit is contained in:
MaddoScientisto 2024-04-28 16:09:45 +02:00
commit 3057ee8725
4 changed files with 31 additions and 18 deletions

View file

@ -6,7 +6,7 @@ version 2
:: sfx/
:: gfx/0.gfx
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w
NC0yOCAxMzowNDo1MCIscmV2aXNpb249MTIyMl1dbHo0AD0MAACaQwAA8xR7WzBdPXtibXA9cHh1
NC0yOCAxNDowOToyOSIscmV2aXNpb249MTI5Nl1dbHo0AD0MAACaQwAA8xR7WzBdPXtibXA9cHh1
AEMgEBAE8PAsZmxhZ3M9MCxwYW5feAgA2nk9MCx6b29tPTExfSwyAPEIrxsj3gN_A94j3gP_CRNu
A04TbiNOA34TAP8DjgM_A04DLiN_Iy4DngP_FAMuXgAd8AnwRU2ALSYtUB1mHQUgHYYNFQAdlh0V
DaYEAMMNFQANlh0FEL0F8BNYAB8zWAAV8CpQRIAUTx8UUA8Ujx8EQC8UTx8kQA8UHx9EDg8ZBEAP
@ -64,11 +64,11 @@ GRAqUCoZAAoZUEo5QAYZChYJBhoWMAkKKQoZCgYZBhBqCSoJFiAWChYKCQCvMDYZRlCGkCbwBkEB
Hw8yAP--------------------------------------QVA9MTF9fQ==
:: gfx/.info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yOCAxMzowNDo1MCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
NC0yOCAxNDowOToyOSIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
MG5pbA==
:: map/0.map
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yOCAxMzowNDo1MCIscmV2aXNpb249MTI1NV1dbHo0ALgFAAAUQgAA8Ah7e2JtcD11c2VyZGF0
NC0yOCAxNDowOToyOSIscmV2aXNpb249MTI5N11dbHo0ALgFAAAUQgAA8Ah7e2JtcD11c2VyZGF0
YSgiaTE2IiwzMgMALyIwAQD-gy4xMAwADwEAoiozMAEAHjQUAAwBADU1ODABAD80ODABACsvNDAz
ACYfNnwABD8xMzCAAEoPXAAaBAQADwEANQ9QACEvMzCAAG0PAQC6KjQ4CAEPBAMHDiAADwEANgSA
AB8zYAEALzMwAQBOLzQ4GAAPDiQADwEAOQ5oAA8BAHIeM4ABD4AAYA8BAP_EBLQDDhAADwEAUwxw
@ -97,27 +97,27 @@ AQABL2UwAQAuLzE4BAATD4AA-0YvMDgEABQfZQQAIA8BABEfOAQAFB9lBAAeDwkhkkpiYWNrCSFk
MTM3LjE2AQAVN4YQLzEyhhARUG09MX19
:: map/.info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yOCAxMzowNDo1MCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
NC0yOCAxNDowOToyOSIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
MG5pbA==
:: sfx/0.sfx
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w
NC0yOCAxMzowNDo1MCIscmV2aXNpb249OTc4XV1sejQARgEAAGYIAADwJ3B4dQADKAAAAwAED0AQ
Ag4AAaABIAKgDgAPEAAN8MoBAgMEBQYHAA--kAgJCgsPDA8NDw4PDxAA8AANDxEPEg8TDxQPFQ8W
DxcTAPEBDxgPGQ8aDxsPHA8dDx4PHxQA8QAgDyEPIg8jDyQPJQ8mDycUAPEAKA8pDyoPKw8sDy0P
Lg8vFADxADAPMQ8yDzMPNA81DzYPNxQA-wU4DzkPOg87DzwPPQ8_Dz8AD--w-wEA6-InWgEQBg8g
EAEgASAB8AACEAIMEAEgDyEgATAPQPDDDygP--DGD-gKD-8PgA-3Dw0B8AkBEAYMMAA-Dw-gMQAb
L-AAMAD--4If-wEAzPEd6A9AAA1ADxcACxoIBggQAgMQBQAGAAgASRcAJggJUP--CfEX-gn8F-4J
8HArAF-_sPBwBAgA-9wf-wEAl1D-----Hw==
NC0yOCAxNDowOToyOSIscmV2aXNpb249MTAyMF1dbHo0AEYBAABmCAAA8CdweHUAAygAAAMABA9A
EAIOAAGgASACoA4ADxAADfDKAQIDBAUGBwAP-5AICQoLDwwPDQ8ODw8QAPAADQ8RDxIPEw8UDxUP
Fg8XEwDxAQ8YDxkPGg8bDxwPHQ8eDx8UAPEAIA8hDyIPIw8kDyUPJg8nFADxACgPKQ8qDysPLA8t
Dy4PLxQA8QAwDzEPMg8zDzQPNQ82DzcUAP8FOA85DzoPOw88Dz0PPg8-AA--8P8BAOvyJ1oBEAYP
IBABIAEgAfAAAhACDBABIA8hIAEwD0Dwww8oD--wxg-4Cg--D4AP9w8NAfAJARAGDDAAPw8P4DEA
Gy-wADAA--_CH-8BAMzxHegPQAANQA8XAAsaCAYIEAIDEAUABgAIAEkXACYICVD--wnxF-4J-Bf_
CfBwKwBf-rDwcAQIAP-cH-8BAJdQ-----x8=
:: sfx/.info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yOCAxMzowNDo1MCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
NC0yOCAxNDowOToyOSIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
MG5pbA==
:: main.lua
--[[pod_format="raw",created="2024-04-04 07:19:33",modified="2024-04-28 13:04:50",revision=1265]]
--[[pod_format="raw",created="2024-04-04 07:19:33",modified="2024-04-28 14:09:29",revision=1307]]
include("/cirnofarm/src/game.lua")
:: .info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTE2IDE5OjQyOjIyIixtb2RpZmllZD0iMjAyNC0w
NC0yOCAxMzowNDo1MCIscnVudGltZT02LHN0b3JlZD0iMjAyNC0wNC0xNiAxOTo0MDowNSIsd29y
NC0yOCAxNDowOToyOSIscnVudGltZT02LHN0b3JlZD0iMjAyNC0wNC0xNiAxOTo0MDowNSIsd29y
a3NwYWNlcz17e2xvY2F0aW9uPSJtYWluLmx1YSMxIix3b3Jrc3BhY2VfaW5kZXg9MX0se2xvY2F0
aW9uPSJnZngvMC5nZngiLHdvcmtzcGFjZV9pbmRleD0yfSx7bG9jYXRpb249Im1hcC8wLm1hcCIs
d29ya3NwYWNlX2luZGV4PTN9LHtsb2NhdGlvbj0ic2Z4LzAuc2Z4Iix3b3Jrc3BhY2VfaW5kZXg9

View file

@ -35,6 +35,10 @@ function Cirno:update()
self:move()
if (self.weapon != nil) then
self.weapon:update()
end
if (btn(4)) then
self.weapon:shoot(self.x+8,self.y+8,self.move_x,self.move_y)
end

View file

@ -100,6 +100,7 @@ function _update()
{"text_box",{text=string.format("%.4f %dfps",stat(1),stat(7)),margin=2,stroke=true,active=false,hover=false}},
{"text_box",{text=string.format("Bullets: %d", count(bullets)),margin=2,stroke=true,active=false,hover=false}},
{"text_box",{text=string.format("Weapon: %s", cirnoInstance.weapon.data.name),margin=2,stroke=true,active=false,hover=false}},
{"text_box",{text=string.format("Weapon timer: %d", cirnoInstance.weapon.timer),margin=2,stroke=true,active=false,hover=false}},
{"sprite_box",{sprite=cirnoInstance.weapon.data.spriteIndex,margin=2,stroke=true,active=false,hover=false}},
}})

View file

@ -17,7 +17,7 @@ local bullets_list = {
local weapons_list = {
ICE_BLASTER={
name = "Ice Blaster",
rate_of_fire = 0.2,
rate_of_fire = 8,
bullet=bullets_list.BASIC,
spriteIndex=104,
--shoot=function(self,x,y,dir_x,dir_y)
@ -26,7 +26,7 @@ local weapons_list = {
},
SPAGHETTI={
name = "Spaghetti",
rate_of_fire = 0.2,
rate_of_fire = 80,
bullet=bullets_list.BASIC,
spriteIndex=105,
}
@ -51,8 +51,16 @@ function Weapon:new(data)
end
function Weapon:shoot(x,y,dir_x,dir_y)
if (self.timer >= self.data.rate_of_fire) then
self.timer = 0
create_bullet(self.data.bullet, x, y, dir_x, dir_y)
end
end
function Weapon:update()
if (self.timer < self.data.rate_of_fire) then
self.timer+=1
end
end
-- Particle