v4.2 Update in Sidescroller
|
|
I just posted an overdue update. I used to update the library once or twice a month but it's been just over two months.
The biggest change is to the can_bump() proc. Previously, the default behavior made you only able to bump dense turfs - you'd walk right through mobs. While this may frequently be the desired behavior, it's not consistent with BYOND's default density behavior and caused some confusion. The can_bump proc now behaves more like you might expect.
There are still some exceptions. Non-dense mobs can walk through dense mobs, but they still bump into dense turfs. If they didn't, you'd fall through the floor and off the map - that's probably not what you want to happen. Also, atoms with scaffold = 1 are treated as non-dense. You can walk in front of them or stand on top of them. If you want them to be dense so you can't move over them at all, set density = 1 and scaffold = 0.
I also added a new demo (called v4.2-demo) which shows a new feature for ladders. The mob now has an on_ladder() proc which determines if they're standing over a ladder. This proc is called to check if the mob can climb a ladder. By default it returns 1 if the turf the mob overlaps most is a ladder and 0 otherwise. The demo shows how to change this so you can climb a ladder only if you're completely inside the turf horizontally. The demo also shows how to make the top ladder turf be a scaffold so you can stand on top of it (like ladders in Mega Man).
|
One potential issue: I have ladders set up as scaffolds but when I add the following to the down action it's a little buggy:
<code> var/turf/t = locate(x, y - 1, z) if(t.ladder && t.scaffold && on_ground) drop()</code>
Mainly when climbing to the top, the player will fall through after they have stood at the top and gone down.