Skip to content

Commit 08e7240

Browse files
Add files via upload
1 parent 114ecbd commit 08e7240

File tree

1 file changed

+146
-0
lines changed

1 file changed

+146
-0
lines changed

games/Mass Lover .js

Lines changed: 146 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,146 @@
1+
/*
2+
> @title:COINCOLLECTER+
3+
> @author:Moriz1432
4+
> @description:
5+
> @tags: ['game', 'collector']
6+
> @addedOn: 2025-12-05
7+
> */
8+
9+
const player = "p"
10+
const wall = "w"
11+
const coin = "c"
12+
13+
setLegend(
14+
[player, bitmap`
15+
................
16+
................
17+
................
18+
......0000......
19+
.....022220.....
20+
....02222220....
21+
....02222220....
22+
....02222220....
23+
....02222220....
24+
....02222220....
25+
.....022220.....
26+
......0000......
27+
................
28+
................
29+
................
30+
................`],
31+
32+
[wall, bitmap`
33+
1111111111111111
34+
1111111111111111
35+
1111111111111111
36+
1111111111111111
37+
1111111111111111
38+
1111111111111111
39+
1111111111111111
40+
1111111111111111
41+
1111111111111111
42+
1111111111111111
43+
1111111111111111
44+
1111111111111111
45+
1111111111111111
46+
1111111111111111
47+
1111111111111111
48+
1111111111111111`],
49+
50+
[coin, bitmap`
51+
................
52+
................
53+
................
54+
......3333......
55+
.....344443.....
56+
....34444443....
57+
....34444443....
58+
....34444443....
59+
....34444443....
60+
....34444443....
61+
.....344443.....
62+
......3333......
63+
................
64+
................
65+
................
66+
................`]
67+
)
68+
69+
setSolids([wall])
70+
71+
// --- LEVELS ---
72+
let level = 0
73+
74+
const levels = [
75+
// Level 1
76+
map`
77+
wwwwwwwww
78+
wp....c.w
79+
w..ww...w
80+
w..w....w
81+
w..w.c..w
82+
w....w..w
83+
wc...w..w
84+
wwwwwwwww`,
85+
86+
// Level 2
87+
map`
88+
wwwwwwwwwww
89+
wp.......cw
90+
w.w.www.w.w
91+
w.w...w.w.w
92+
w.w.c.w.w.w
93+
w...w.....w
94+
wc....c...w
95+
wwwwwwwwwww`,
96+
97+
// Level 3 (Hard mode)
98+
map`
99+
wwwwwwwwwww
100+
w.c...c...w
101+
w.www.www.w
102+
wp..c.....w
103+
www.w.www.w
104+
w...c..c..w
105+
w.www.www.w
106+
w....c....w
107+
wwwwwwwwwww`
108+
]
109+
110+
setMap(levels[level])
111+
112+
// --- MOVEMENT ---
113+
onInput("w", () => getFirst(player).y--)
114+
onInput("s", () => getFirst(player).y++)
115+
onInput("a", () => getFirst(player).x--)
116+
onInput("d", () => getFirst(player).x++)
117+
118+
// --- GAME LOGIC ---
119+
afterInput(() => {
120+
const p = getFirst(player)
121+
122+
// Remove coins if player steps on them
123+
getTile(p.x, p.y)
124+
.filter(t => t.type === coin)
125+
.forEach(c => c.remove())
126+
127+
// Next level if all coins are gone
128+
if (tilesWith(coin).length === 0) {
129+
clearText()
130+
addText("Level Complete!", { y: 1, color: color`4` })
131+
132+
level++
133+
134+
if (level < levels.length) {
135+
setTimeout(() => {
136+
clearText()
137+
setMap(levels[level])
138+
}, 500)
139+
} else {
140+
setTimeout(() => {
141+
clearText()
142+
addText("YOU WIN!", { y: 1, color: color`3` })
143+
}, 500)
144+
}
145+
}
146+
})

0 commit comments

Comments
 (0)