Spawner for barrels

This commit is contained in:
MaddoScientisto 2024-04-26 13:31:42 +02:00
commit 2507ba301c
4 changed files with 144 additions and 97 deletions

View file

@ -6,74 +6,75 @@ version 2
:: sfx/ :: sfx/
:: gfx/0.gfx :: gfx/0.gfx
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w
NC0yNiAwOToyMjo1NCIscmV2aXNpb249ODIzXV1sejQALQgAAG49AADzFHtbMF09e2JtcD1weHUA NC0yNiAxMTozMToxOCIscmV2aXNpb249ODcyXV1sejQAcggAANo9AADzFHtbMF09e2JtcD1weHUA
QyAQEATw8CxmbGFncz0wLHBhbl94CADaeT0wLHpvb209MTF9LDIA8QivGyPeA34D3iPeA-4JE24D QyAQEATw8CxmbGFncz0wLHBhbl94CADaeT0wLHpvb209MTF9LDIA8QivGyPeA34D3iPeA-4JE24D
ThNuI04DfhMA-wOOAz4DTgMuI34jLgOeA-4UAy5eAB3wCfBFTYAtJi1QHWYdBSAdhg0VAB2WHRUN ThNuI04DfhMA-wOOAz4DTgMuI34jLgOeA-4UAy5eAB3wCfBFTYAtJi1QHWYdBSAdhg0VAB2WHRUN
pgQAww0VAA2WHQUQvQXwE1gAHzNYABXwKlBEgBRPHxRQDxSPHwRALxRPHyRADxQfH0QODxkEQA8U pgQAww0VAA2WHQUQvQXwE1gAHzNYABXwKlBEgBRPHxRQDxSPHwRALxRPHyRADxQfH0QODxkEQA8U
PhoNDxkOBEANLgoACg0ODARADR4aAAoJDBQAQA5KCQoSAEEOKgAKJQASXiIA714NDA4EUBQ_DRSA PhoNDxkOBEANLgoACg0ODARADR4aAAoJDBQAQA5KCQoSAEEOKgAKJQASXiIA714NDA4EUBQ_DRSA
RPAVkwAd8AjwFZxADH8QHDAMfgwODCCcHgwgDH8cDAcAH30GAAajDgwwDH0cQJzwFG8AHzFvABb3 RPAVkwAdkfASoTABHxABHgIAEyAIAA8KAASuDxGhDSAODxwPDAQARA4RAA4MAAQEAPIQIQ4FAQAO
BAY-GVBpLllOGQ4ZXlkeeVAeGbADACHADgMAXynAGfAXWwAPD0UCBQ8yAEf8Ac8TLxEPE18RDxM- DB4PDA4LDA4RDA4BBQAOCw4LDB4LDgEMAR4AEwsCACABC0MAxQseDB4LDAsBDA4FEBwAYyEOASCu
EQ8TDB8NACgMTw4AIywvDgC0HA8RfxMMLxE-Ex8gAAAbAB9PDQAO8QA8Di8RLgwtjh0ODC0ObQ4H INsAHzHbABb3BAY-GVBpLllOGQ4ZXlkeeVAeGbADACHADgMAXynAGfAXWwAPD7ECBQ8yAEf8Ac8T
ACcMXQgAfzwOLD0OHd7IAB3Z9AwPHzQedB40HiQeJAYA8QBEDiQe1B6EHiQOlB6EDjQEAAYeABCE LxEPE18RDxM-EQ8TDB8NACgMTw4AIywvDgC0HA8RfxMMLxE-Ex8gAAAbAB9PDQAO8QA8Di8RLgwt
BAA-DvQJZgId-0H-FgA2DoYOFgUWDgUmBTYONgUOZgUGDkYOFgVWDgb_AFYORg42BTYOJgUGDoYO jh0ODC0ObQ4HACcMXQgAfzwOLD0OHd7IAB3Z9AwPHzQedB40HiQeJAYA8QBEDiQe1B6EHiQOlB6E
BgUmDgYFZg5GDib_AIYOlgU2DhYFtg52BSYFFg42BZYOVoAAHvIAFQMMDxAMDhwODA4MbxUOCgBR DjQEAAYeABCEBAA-DvQJ0gId-0H-FgA2DoYOFgUWDgUmBTYONgUOZgUGDkYOFgVWDgb_AFYORg42
HQwdDC0LALEdDgwdDA4tDhwOLQoAUgwtHC0MCgA0Dl0OCgA-DD0MDAACBSIABTYABUoAAl8AMy0M BTYOJgUGDoYOBgUmDgYFZg5GDib_AIYOlgU2DhYFtg52BSYFFg42BZYOVoAAHvIAFQMMDxAMDhwO
TXMAI20MCQA-DP0DxQAd0B8V1B6UDx8kHgQNZB0GAD8UHSQIAAQwdB40BABQDYQelA0SACZ0DSAA DA4MbxUOCgBRHQwdDC0LALEdDgwdDA4tDhwOLQoAUgwtHC0MCgA0Dl0OCgA-DD0MDAACBSIABTYA
FzQGAH8EDRQNhB7UigAd4NQfFLQPHwQfFAQfH3QeCAABHgIsBB0IAJAUDiQeVB1UHlQSAIUOZB0E BUoAAl8AMy0MTXMAI20MCQA-DP0DxQAd0B8V1B6UDx8kHgQNZB0GAD8UHSQIAAQwdB40BABQDYQe
HoQOBAYACiwAElQGAF4OZB3UHdACD-wDb-EUQF8UcB4PFT8fLkAeDxUOPx8PFQ4NDiAeDQ4NPx8O lA0SACZ0DSAAFzQGAH8EDRQNhB7UigAd4NQfFLQPHwQfFAQfH3QeCAABHgIsBB0IAJAUDiQeVB1U
DQ4NDhAGAGE8DQ4NHgALADENDhwHABE_BgAhHA4HABEeBgAnDhQaACUUDhoA4CwNDixeTA4NTA0O HlQSAIUOZB0EHoQOBAYACiwAElQGAF4OZB3UHdACD-wDb-EUQF8UcB4PFT8fLkAeDxUOPx8PFQ4N
AA48FgBSPA4QDixaAEEOIA4MCgBhDQ4cDkAuCgBPHnBeQMsAJAA-AFEuQA4PH0kAYw4NLiAOLAsA DiAeDQ4NPx8ODQ4NDhAGAGE8DQ4NHgALADENDhwHABE_BgAhHA4HABEeBgAnDhQaACUUDhoA4CwN
MRwOEMkAYA4NPAAOTAgAUUwuTC5MogAgFEy2ADccFBzOACwcHucANQ4AHhkACBoBEiDUAG4NHkAu DixeTA4NTA0OAA48FgBSPA4QDixaAEEOIA4MCgBhDQ4cDkAuCgBPHnBeQMsAJAA-AFEuQA4PH0kA
PC68AA-rAUHQE51QDX8QDVANDl8YDgcAQgw-HgwJAD8LHAsKABISOwgAEFwGAE5_DVCd-AcPuAAX Yw4NLiAOLAsAMRwOEMkAYA4NPAAOTAgAUUwuTC5MogAgFEy2ADccFBzOACwcHucANQ4AHhkACBoB
DzIAq5AGBwYHHxYGBx4JALEGBw4WHhYeZgcGHgMAAQIAdRYelh4WBwYCAHIeBgemHhYODgADKABS EiDUAG4NHkAuPC68AA-rAUHQE51QDX8QDVANDl8YDgcAQgw-HgwJAD8LHAsKABISOwgAEFwGAE5_
Vh4WHlYcAAZJABKmHAAfBkgAAAIoADxmHhZJAF8WDiYehsQAHfYA9QHfGBXeFd8VFd4V3hXdBgB- DVCdaAgPuAAXDzIAq5AGBwYHHxYGBx4JALEGBw4WHhYeZgcGHgMAAQIAdRYelh4WBwYCAHIeBgem
9QLdFd31AVAAHU-2AA0GAgDKL-YBYwEfRw8WDQ4CADgVDQ4CAHP1AQ8TLwwv6AggHwwiCRkPIwkZ HhYODgADKABSVh4WHlYcAAZJABKmHAAfBkgAAAIoADxmHhZJAF8WDiYehsQAHfYA9QHfGBXeFd8V
DwoJDw4ACXE-DA8TLxEvFgA1jxMfIAA3bxEPDgA-DwxfEAAEAUAAIQw-DgAv3xN1Ax8PMgD--0Vf Fd4V3hXdBgB-9QLdFd31AVAAHU-2AA0GAgDKL-YBYwEfRw8WDQ4CADgVDQ4CAHP1AQ8TLwwv6Agg
-xQS0B4CAAYPfwYdT-8UEPA1ACEv0B4CAAcPTwAd4PBIKLCIYIhgGNAY0AjgAgAQGAYAH2BMAR7D HwwiCRkPIwkZDwoJDw4ACXE-DA8TLxEvFgA1jxMfIAA3bxEPDgA-DwxfEAAEAUAAIQw-DgAv3xN1
ERSQFAAPFA8fBA4PPAmVDg0OBB4NBA0OAgDHBA0eBK4EDh0ErQQtBAAbDQIAQx0kDQQCADk0DQQC Ax8PMgD--0Vf-xQS0B4CAAYPfwYdT-8UEPA1ACEv0B4CAAcPTwAd4PBIKLCIYIhgGNAY0AjgAgAQ
AG8AFJAU8BHmAB47ERTAnAAoMA6aAIAgHgSeIB0EbQsAWh0EbR4NDQAiBA0OAFINJA0EPRAAMA0E GAYAH2BMAR7DERSQFAAPFA8fBA4PPAmVDg0OBB4NBA0OAgDHBA0eBK4EDh0ErQQtBAAbDQIAQx0k
TUYAMcRABBMAIQRQEAAeIJoAD7YCbyIfFBwCD7kCOD8SwC4CAAIf-psBHh7QngAP0gIrmXAI4Ahw DQQCADk0DQQCAG8AFJAU8BHmAB47ERTAnAAoMA6aAIAgHgSeIB0EbQsAWh0EbR4NDQAiBA0OAFIN
FEAIMI8CGgiPAhUIjwIwTghOkQJdTQhNBC0GABQNAgAYCJkCGAiZAgMaACENAHMAX4AY0BhQ0gFP JA0EPRAAMA0ETUYAMcRABBMAIQRQEAAeIJoAD7YCbyIfFBwCD7kCOD8SwC4CAAIf-psBHh7QngAP
mGAI4AiAFDAIQOQAGghzAxUY4wAhPhjjACA9GNcADAYAA78AJwQY4gAXGOEAAxgAzw0AFDAYMBRw 0gIrmXAI4AhwFEAIMI8CGgiPAhUIjwIwTghOkQJdTQhNBC0GABQNAgAYCJkCGAiZAgMaACENAHMA
GNAYYJIBHS-w8OQCbC-_ELMAHk-Q-xQQywI5L-4STgAdWFA4sCjAAgBvmHB4oEjwnQ0fj1AYAGhQ X4AY0BhQ0gFPmGAI4AiAFDAIQOQAGghzAxUY4wAhPhjjACA9GNcADAYAA78AJwQY4gAXGOEAAxgA
_BDw1AUeAO0BAgIArrA4kFhQiGB48Gh_AA-8AW9hMDwPHCxgwhGRBwwOHDAcDgxHEBWQDgxnDA4w zw0AFDAYMBRwGNAYYJIBHS-w8OQCbC-_ELMAHk-Q-xQQywI5L-4STgAdWFA4sCjAAgBvmHB4oEjw
HhcOAgAyDEAOCQDwISAeIFcADjAeIDcwHkAsCBwQHkAHLAgcB0AeAAdcBwAeAB4QfBAeIAcMBwwH nQ0fj1AYAGhQ_BDw1AUeAO0BAgIArrA4kFhQiGB48Gh_AA-8AW9hMDwPHCxgwhHwCAcMDhwwHA4M
THAXAAgAnwxwFxAXkBgQGH8BHvIEMCw-HHAcbmAMDhEOEQcOYAwHDgMAYGAMBxwHHAgA-zAPF0cN RwwODDAMDgxnDA4wHhcOAgAyDEAOCQDwISAeIFcADjAeIDcwHkAsCBwQHkAHLAgcB0AeAAdcBwAe
DlAcJw0nHoAMBw6gBwwHCAcOB3AHDA4IDggeB1AHHG4HMBcsXhcgF3wAF0AHABcABxAHkAcAB7Ac AB4QfBAeIAcMBwwHTHAXAAgAnwxwFxAXkBgQGH8BHvIEMCw-HHAcbmAMDhEOEQcOYAwHDgMAYGAM
ABxwBCAPMgD-GP8ngA8b0B6ATxgOPUA9Am0wvTAdAm0CHSBdAl0gzTAdAk0CLTBNCF0wPQJtQF0C BxwHHAgA-zAPF0cNDlAcJw0nHoAMBw6gBwwHCAcOB3AHDA4IDggeB1AHHG4HMBcsXhcgF3wAF0AH
LWB9cG2QTbAtkwH-Sw8yABz-AAQEBAAfHAAOFx4XDgAeADwAGv8GCAgEgAcwByAHEAfwBAcQByAH ABcABxAHkAcAB7AcABxwBCAPMgD-GP8ngA8b0B6ATxgOPUA9Am0wvTAdAm0CHSBdAl0gzTAdAk0C
MAeAQgAdkAgAOAAIAAgwCAYAgRAIABhQGFAYCgAEFgA-OAAINwEfDzIA-------------------- LTBNCF0wPQJtQF0CLWB9cG2QTbAtkwH-Sw8yABz-AAQEBAAfHAAOFx4XDgAeADwAGv8GCAgEgAcw
------------------------w1A9MTF9fQ== ByAHEAfwBAcQByAHMAeAQgAdkAgAOAAIAAgwCAYAgRAIABhQGFAYCgAEFgA-OAAINwEfDzIA----
----------------------------------------w1A9MTF9fQ==
:: gfx/.info.pod :: gfx/.info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yNiAwOToyMjo1NCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA NC0yNiAxMTozMToxOCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
MG5pbA== MG5pbA==
:: map/0.map :: map/0.map
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yNiAwOToyMjo1NCIscmV2aXNpb249ODQzXV1sejQAewMAAPlBAADwCHt7Ym1wPXVzZXJkYXRh NC0yNiAxMTozMToxOCIscmV2aXNpb249ODkxXV1sejQAnAMAABVCAADwCHt7Ym1wPXVzZXJkYXRh
KCJpMTYiLDMyAwAvIjABAP--jD80ODABAF4vNDABAAs-MTMw9AL--1wOBAMOIAAPAQBGEzMEAAgB KCJpMTYiLDMyAwAvIjABAP_DLjEwDAAPAQDhPzQ4MAEAXi80MAEACz8xMzABAHMXNAQADwEANQ9Q
AC8zMAEATi80OBgADw4kAA8BADkOaAAPAQD----------8v3GyIpLGhpZGRlbj1mYWxzZSxuYW1l ACEfM4AAbg8BALoqNDgIAQ8EAwcOIAAPAQA2BIAAHzNgAQAvMzABAE4vNDgYAA8OJAAPAQA5DmgA
PSJvYmplY3RzIixwYW5feD0tOTMuMwEAARcAdXk9MTUzLjYBALI3LHRpbGVfaD0xNgoAEHcKAI96 DwEAch4zgAEPgABgDwEA---------7-1HSIpLGhpZGRlbj1mYWxzZSxuYW1lPSJvYmplY3RzIixw
b29tPTF9LIMQ-58uMTAMAA8BAP-vL2EwgADtDwEA--------------9LD4MQA6Zmb3JlZ3JvdW5k YW5feD0tMTUyLjgzAQABFwBpeT0tMTAxFwCSdGlsZV9oPTE2CgAQdwoAj3pvb209MX0shBAJDwEA
hhATNHkQTy0xMTBuELMvMzkEAAMPAQBRYzMyMDAwOQQAGmIMAA-kG1AKgAAaMAwAHzMAAW0WOIwB ----mi9hMIAA7Q8BAP--------------Sw_EEAOvZm9yZWdyb3VuZIcQ4i8zOQQAAw8BAFFjMzIw
DwQAAQ_AADYPAQAFHmOUAAgIAB8zgABZFzAMAA_AAD0XNQQACAEALzUwAQAID4AAOB808iEFD4AA MDA5BAAaYgwAHzOAAF0aMAwAHzMAAW0WOIwBDwQAAQ_AADYPAQAFHmOUAAgIAB8zgABZFzAMAA_A
1B81BAAMBAEAGjUEAA_AADYPAQAiD4AA-zhqMmIwMDJjBAAEAQAvMmMEAAQfZIAANz8zNTABAB4v AD0XNQQACAEALzUwAQAIDwABUB8wgADUHzUEAAwEAQAaNQQADwABtg_AAOxqMmIwMDJjBAAEAQAv
M2KAAGsvMDCAAPwfMoAAO2cyODAwMjkEAB9hAAFIL2QwXAAOACgADiQADwEALw5YAA9cAAMvMzIk MmMEAAQfZIAANz8zNTABAB4vM2KAAGsvMDCAAPwfMoAAO2cyODAwMjkEAB9hAAFIL2QwXAAOACgA
AAEPAQAvD4AABgz8CA_AASUfM4AAIwF8CBc5BAAPpAECDwEALwGAABc1BAAPgAARAywALzMwAQAz DiQADwEALw5YAA9cAAMvMzIkAAEPAQAvD4AABgz8CA_AASUfM4AAIwF8CBc5BAAPpAECDwEALwGA
DuACDzAADAMcAw4BAA_QAycPiAEDDxwCEw8BAAMPgABHDZwBD4AA3Q4BAA_AAK4FCAMPBAAkD24Q ABc1BAAPgAARAywALzMwAQAzDuACDzAADAMcAw4BAA_QAycPiAEDDxwCEw8BAAMPgABHDZwBD4AA
MV9zb2xpZO8g-_oJzQMvOTABANYvMWEEAAMPAQBVLzFhBAADLzAwkAFTJzFiBAAWOQQALzA4BAAK 3Q4BAA_AAK4FCAMPBAAkD4cQMU9zb2xpghBWDwEA-4QISgIvOTABANYvMWEEAAMPAQBVLzFhBAAD
DwEANx84BAAiDwEANx84BAAiD4ABNx84BAAjDwEANS8xOAQAIw8BADUvMTgEACMPAQA1LzE4BAAj LzAwkAFTJzFiBAAWOQQALzA4BAAKDwEANx84BAAiDwEANx84BAAiD4ABNx84BAAjDwEANS8xOAQA
DwEANS8xOAQAIw8BADUvMWIEAAAECAQfYgQABw8BADYfOAQAIg8BADcfOAQAIg8BADcfOAQAIg8B Iw8BADUvMTgEACMPAQA1LzE4BAAjDwEANS8xOAQAIw8BADUvMWIEAAAECAQfYgQABw8BADYfOAQA
ADceOAQAD4EQAhs4BAAPAQA1HjgEAB8zoQsBGzgEAA8BADUfOIAA-2wuMWJ4BA_AAAEEHAAOgAQP Ig8BADcfOAQAIg8BADcfOAQAIg8BADceOAQAD4IQAhs4BAAPAQA1HjgEAB8zogsBGzgEAA8BADUf
AQA0HzgEABIPAQBGLzE4BAATDwEARS8xOAQAEw8BAEUvMTgEABMPAQBGHzgEACIPAQA3HzgEACIP OIAA-2wuMWJ4BA_AAAEEHAAOgAQPAQA0HzgEABIPAQBGLzE4BAATDwEARS8xOAQAEw8BAEUvMTgE
7yC2TGJhY2vvIA_GEClQbT0xfX0= ABMPAQBGHzgEACIPAQA3HzgEACIPCSG2TGJhY2sJIU4xMi4zhxAoMjYWAA_HEAZQbT0xfX0=
:: map/.info.pod :: map/.info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yNiAwOToyMjo1NCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA NC0yNiAxMTozMToxOCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
MG5pbA== MG5pbA==
:: sfx/0.sfx :: sfx/0.sfx
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjM0Iixtb2RpZmllZD0iMjAyNC0w
NC0yNiAwOToyMjo1NCIscmV2aXNpb249Njk5XV1sejQARgEAAGYIAADwJ3B4dQADKAAAAwAED0AQ NC0yNiAxMTozMToxOCIscmV2aXNpb249NzMzXV1sejQARgEAAGYIAADwJ3B4dQADKAAAAwAED0AQ
Ag4AAaABIAKgDgAPEAAN8MoBAgMEBQYHAA--kAgJCgsPDA8NDw4PDxAA8AANDxEPEg8TDxQPFQ8W Ag4AAaABIAKgDgAPEAAN8MoBAgMEBQYHAA--kAgJCgsPDA8NDw4PDxAA8AANDxEPEg8TDxQPFQ8W
DxcTAPEBDxgPGQ8aDxsPHA8dDx4PHxQA8QAgDyEPIg8jDyQPJQ8mDycUAPEAKA8pDyoPKw8sDy0P DxcTAPEBDxgPGQ8aDxsPHA8dDx4PHxQA8QAgDyEPIg8jDyQPJQ8mDycUAPEAKA8pDyoPKw8sDy0P
Lg8vFADxADAPMQ8yDzMPNA81DzYPNxQA-wU4DzkPOg87DzwPPQ8_Dz8AD--w-wEA6-InWgEQBg8g Lg8vFADxADAPMQ8yDzMPNA81DzYPNxQA-wU4DzkPOg87DzwPPQ8_Dz8AD--w-wEA6-InWgEQBg8g
@ -82,14 +83,14 @@ L-AAMAD--4If-wEAzPEd6A9AAA1ADxcACxoIBggQAgMQBQAGAAgASRcAJggJUP--CfEX-gn8F-4J
8HArAF-_sPBwBAgA-9wf-wEAl1D-----Hw== 8HArAF-_sPBwBAgA-9wf-wEAl1D-----Hw==
:: sfx/.info.pod :: sfx/.info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIixtb2RpZmllZD0iMjAyNC0w
NC0yNiAwOToyMjo1NCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA NC0yNiAxMTozMToxOCIsc3RvcmVkPSIyMDI0LTA0LTA0IDA3OjE5OjMzIl1dbHo0AAQAAAADAAAA
MG5pbA== MG5pbA==
:: main.lua :: main.lua
--[[pod_format="raw",created="2024-04-04 07:19:33",modified="2024-04-26 09:22:54",revision=950]] --[[pod_format="raw",created="2024-04-04 07:19:33",modified="2024-04-26 11:31:18",revision=995]]
include("/cirnofarm/src/game.lua") include("/cirnofarm/src/game.lua")
:: .info.pod :: .info.pod
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTE2IDE5OjQyOjIyIixtb2RpZmllZD0iMjAyNC0w b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTE2IDE5OjQyOjIyIixtb2RpZmllZD0iMjAyNC0w
NC0yNiAwOToyMjo1NCIscnVudGltZT02LHN0b3JlZD0iMjAyNC0wNC0xNiAxOTo0MDowNSIsd29y NC0yNiAxMTozMToxOCIscnVudGltZT02LHN0b3JlZD0iMjAyNC0wNC0xNiAxOTo0MDowNSIsd29y
a3NwYWNlcz17e2xvY2F0aW9uPSJtYWluLmx1YSMxIix3b3Jrc3BhY2VfaW5kZXg9MX0se2xvY2F0 a3NwYWNlcz17e2xvY2F0aW9uPSJtYWluLmx1YSMxIix3b3Jrc3BhY2VfaW5kZXg9MX0se2xvY2F0
aW9uPSJnZngvMC5nZngiLHdvcmtzcGFjZV9pbmRleD0yfSx7bG9jYXRpb249Im1hcC8wLm1hcCIs aW9uPSJnZngvMC5nZngiLHdvcmtzcGFjZV9pbmRleD0yfSx7bG9jYXRpb249Im1hcC8wLm1hcCIs
d29ya3NwYWNlX2luZGV4PTN9LHtsb2NhdGlvbj0ic2Z4LzAuc2Z4Iix3b3Jrc3BhY2VfaW5kZXg9 d29ya3NwYWNlX2luZGV4PTN9LHtsb2NhdGlvbj0ic2Z4LzAuc2Z4Iix3b3Jrc3BhY2VfaW5kZXg9

View file

@ -70,9 +70,17 @@ function _update()
weapons_manager.update() weapons_manager.update()
for b in all(actors) do for a in all(actors) do
a:update()
end
for b in all(bullets) do
b:update() b:update()
end end
for p in all(particles) do
p:update()
end
end end
LAYERS = { LAYERS = {
@ -83,6 +91,8 @@ LAYERS = {
} }
actors = {} actors = {}
bullets = {}
particles = {}
function _draw() function _draw()
cls(0) cls(0)
@ -94,8 +104,24 @@ function _draw()
end end
function spawn_objects() function spawn_objects()
local b = Barrel:new(32,32)
add(actors,b) local width = 32
local height = 32
for x=0,width,1 do
for y=0,height,1 do
local tile = map_manager.get_layer_tile(x,y,1)
if (tile == 3) then
local b = Barrel:new(x*tile_width,y*tile_height)
add(actors,b)
end
end
end
end end
function render_layer(layer) function render_layer(layer)
@ -114,9 +140,13 @@ function render_layer(layer)
b:draw() b:draw()
end end
-- for b in all(bullets) do for b in all(bullets) do
-- b:draw() b:draw()
-- end end
end
for p in all(particles) do
p:draw()
end
end
end end

View file

@ -38,6 +38,10 @@ function M.get_layer_tile(x,y,layer)
return get_layer_tile(x,y,layer) return get_layer_tile(x,y,layer)
end end
function M.get_layer_tile(x,y,layer)
return get_layer_tile(x,y,layer)
end
-- function M.can_move(x,y) -- function M.can_move(x,y)
-- return is_tile(0,x,y) -- return is_tile(0,x,y)
-- end -- end

View file

@ -6,7 +6,6 @@ local Actor = require(make_path("actor2"))
M = {} M = {}
local weapons = {} local weapons = {}
local bullets = {}
-- local particles = {} -- local particles = {}
weapon = { weapon = {
@ -39,7 +38,7 @@ Particle.spriteIndex=81
function Particle:update() function Particle:update()
self.life-=1 self.life-=1
if self.life<=0 then if self.life<=0 then
del(actors,self) del(particles,self)
end end
end end
@ -47,37 +46,47 @@ end
-- spr(self.spriteIndex,self.x,self.y) -- spr(self.spriteIndex,self.x,self.y)
-- end -- end
bullet = {
x=0,
y=0,
dx=0,
dy=0,
spriteIndex=80,
destroy_sprite_index=66,
life=100,
damage=1,
}
bullet.__index = bullet
function bullet:new(x, y, dx, dy)
local o = setmetatable({}, bullet)
o.x = x
o.y = y
o.dx = dx
o.dy = dy
return o
end
function bullet:destroy() Bullet = Actor:new()
--function Bullet:new()
--
--end
Bullet.dx=0
Bullet.dy=0
Bullet.spriteIndex = 80
Bullet.damage=1
-- bullet = {
-- x=0,
-- y=0,
-- dx=0,
-- dy=0,
-- spriteIndex=80,
-- destroy_sprite_index=66,
-- life=100,
-- damage=1,
-- }
-- bullet.__index = bullet
-- function bullet:new(x, y, dx, dy)
-- local o = setmetatable({}, bullet)
-- o.x = x
-- o.y = y
-- o.dx = dx
-- o.dy = dy
-- return o
-- end
function Bullet:destroy()
-- Create particle -- Create particle
local p = Particle:new(self.x, self.y) local p = Particle:new(self.x, self.y)
add(actors, p) add(particles, p)
del(bullets,self) del(bullets,self)
end end
function bullet:check_collision() function Bullet:check_collision()
if (map_manager.is_tile_shoot_solid(self.x,self.y)) then if (map_manager.is_tile_shoot_solid(self.x,self.y)) then
self:destroy() self:destroy()
@ -85,7 +94,7 @@ function bullet:check_collision()
end end
function bullet:update() function Bullet:update()
self.x+=self.dx self.x+=self.dx
self.y+=self.dy self.y+=self.dy
@ -97,7 +106,7 @@ function bullet:update()
self:check_collision() self:check_collision()
end end
function bullet:draw() function Bullet:draw()
spr(self.spriteIndex,self.x,self.y) spr(self.spriteIndex,self.x,self.y)
end end
@ -109,7 +118,10 @@ function M.create_bullet(new_x, new_y, dir_x, dir_y)
local normalized_dir_x = dir_x / length local normalized_dir_x = dir_x / length
local normalized_dir_y = dir_y / length local normalized_dir_y = dir_y / length
local b = bullet:new(new_x, new_y, normalized_dir_x * 2, normalized_dir_y * 2) local b = Bullet:new(new_x, new_y, normalized_dir_x * 2, normalized_dir_y * 2)
b.dx = normalized_dir_x * 2
b.dy = normalized_dir_y * 2
add(bullets, b) add(bullets, b)
@ -151,9 +163,9 @@ function M.init()
end end
function M.draw() function M.draw()
for b in all(bullets) do --for b in all(bullets) do
b:draw() -- b:draw()
end --end
-- for p in all(particles) do -- for p in all(particles) do
-- p:draw() -- p:draw()
@ -161,9 +173,9 @@ function M.draw()
end end
function M.update() function M.update()
for b in all(bullets) do --for b in all(bullets) do
b:update() -- b:update()
end --end
-- for p in all(particles) do -- for p in all(particles) do
-- p:update() -- p:update()