mirror of
https://github.com/pyscript/pyscript.git
synced 2022-05-01 19:47:48 +03:00
46 lines
1.3 KiB
Plaintext
46 lines
1.3 KiB
Plaintext
Enemy:
|
|
#collideWith
|
|
checks collision. Bounces off of walls and other enemies. Kills marios.
|
|
gets killed by block bonk from below
|
|
|
|
Specific enemy behaviors:
|
|
koopas get replaced with shells
|
|
shells get kicked if touched from the side, instead of killing
|
|
|
|
Mario:
|
|
#collideWith
|
|
gets expelled from walls, bonks blocks, destroys blocks as big Mario
|
|
note: collision with blocks is determined by which one is over the center
|
|
if you're slightly to the side, you slip past it.
|
|
Crazy-ass sprite shifting if you're in star mode!
|
|
|
|
|
|
Item
|
|
#collideWith
|
|
item pickup logic
|
|
|
|
Mushroom
|
|
#update
|
|
movement logic for mushrooms
|
|
get impulse from being block bonked
|
|
this can be implemented by giving them the appropriate accel
|
|
just if they overlap a block from the bottom.
|
|
of course, only AFTER they finish sliding out of the block.
|
|
|
|
Water levels:
|
|
make a separate class for water Marios
|
|
less gravity
|
|
swimming sprite
|
|
fireballs are the same
|
|
jump works when not on the ground
|
|
different enemies
|
|
|
|
|
|
TODO: Make level loader use hashes instead of arrays where possible.
|
|
Should be a free performance gain.
|
|
|
|
Should also make item deletion less weird.
|
|
|
|
TODO: Make gravity exist higher up instead of having a magic number.
|
|
Note from the future: Nope. Different objects have different gravity.
|