Open Alucard648 opened 8 years ago
1) Try in SMBX 1.3 and you will see worse case where small character allowed to go through this 2) That because I don't ignoring moving elements on this moment which was hard to solve even without movements around, but I have some thinks how to avoid this 3) That because block flagged at bottom is candidate for cliff detection, i wasn't actually made right touch marking that I still work to allow right reaction on contact with special blocks but avoid informal reaction from your screenshots 4) This also wasn't finished because that detector which fixes bonking and corner stumbling on wall is works for rect-only blocks yer but requires much more logical checks with truangle blocks (which side, which height, does actually touching or touched rectangular area only, etc.) which I will work a bit later 5) same imperfection as 3 6) painting of touched blocks wasn't actually implemented yet, therefore painted blocks are overlapped and forsed player change it's physical position at contacted side 7) one-way blocks correctly working with recr-only blocks and triangular one-way collision blocks are VERY experimentally 8) because on moment player flying I n air. For one mili second 9) that wired, and I'll check after sleep (at me now 4:45 AM, very late night)
9'th bug fixed
3, 4, 5 are been fixed
P.S. Please use in next time a checkboxes to let me easier mark fixed bugs in the lists, it's easy:
- [x] This is a complete item
- [ ] This is an incomplete item
About 6'th item: the case is character usually has smaller width than wall. So, I need to test in SMBX when character will push wall and keep zero space between wall EDIT: Okay, character doesn't dying while falling between danger wall with zero width, I will don't register walls which are doesn't pushing
Item 7 finally fixed. However fixing 2 is pretty hard because one attempt broke my previous fix of corner collisions checking, and I undone that change. Will try test. Anyway, while playable character will be smoothly moved away (I also declare direction dependent from slope angle to avoid cheating going through wall). NPC will be forcedly moved to nearest wall unlike players.
About 1: how I told, in SMBX 1.3 that bug is much harder, but why don't keep it? Fixing of same with 2 resulted same broke. About 8: I don't think that cliff checker needed here, because I want to send a wall pushing event instead to tell NPC turn. Anyway, reason is: while automatic resolving of two-slopes collision in process, array of cliff candidates blocks accepts few elements, and there is illusion that no nearest touching blocks around to check it's edge for cliff distance.
Item 2 is semi-fixed. For NPC's I need to force dropping them on soft-crush to the nearest wall (whille playable character will be smoothly moved opposite to it's current direction, or better: recent motion vector sign to avoid familiar cheating tricks with this effect like this done in original Mario games)
Checked item #1 in SMBX 1.4.3. Works fine.