D 2018-09-02T21:55:37.237 L bizarro\sworld P 6c12858c862a7540d4fab0625af4c3780e81948c U zzo38 W 2084 One new feature of Free Hero Mesh beyond Hero Mesh can be "bizarro world" (not fully implemented yet). The intention is something similar to the bizarro world in the [http://escape.spacebar.org/win32/escape.txt|Escape] game. So far this is just a draft. Objects in the bizarro world have the features: * Invisible (maybe can be changed so that some way to make them visible?) * Not seen by ObjTopAt, ObjBottomAt, ObjClassAt, HeightAt, VolumeAt, and Broadcast (and the variants of Broadcast that are not mentioned below); however, FlushClass and FlushObj do affect the bizarro world * Does not receive the automatic KEY, BEGIN_TURN, and END_TURN events * ObjDir, ObjBelow, and ObjAbove see only bizarro objects when executed from a bizarro object and otherwise see only non-bizarro objects * Movement in the bizarro world does not interact with the normal world and vice versa * CollisionLayers are separate for the bizarro world than the normal world New commands: * Bizarro: Read/write the OF_BIZARRO flag (if possible). * BizarroHeightAt: Largest height of bizarro objects at location. * BizarroObjBottomAt: Bottom bizarro object at location. * BizarroObjClassAt: Bizarro object of class at location. * BizarroObjTopAt: Top bizarro object at location. * BizarroSwap: Swap two objects if one is in the bizarro world and the other isn't, and if calling the BIZARRO_SWAP messages on each both returns zero, and it wouldn't cause conflicts with CollisionLayers. * BizarroSwapAt: Call the BIZARRO_SWAP messages on all objects at the location. If changing the OF_BIZARRO flag of all objects that BIZARRO_SWAP returns zero would not cause conflicts with CollisionLayers, perform those changes. * BizarroVolumeAt: Largest volume of bizarro objects at location. * FullBroadcast: Similar to Broadcast but affects the bizarro world in addition to the normal world. * FullBroadcastEx * FullBroadcastSum * FullBroadcastSumEx New messages: * BIZARRO_SWAP: Called when BizarroSwap or BizarroSwapAt is executed. Z 400dfc338c96faf10cf24192a2439f38