1 /**********************************************************************************
2 * Copyright (c) 2008, 2009 Derek Yu and Mossmouth, LLC
3 * Copyright (c) 2018, Ketmar Dark
5 * This file is part of Spelunky.
7 * You can redistribute and/or modify Spelunky, including its source code, under
8 * the terms of the Spelunky User License.
10 * Spelunky is distributed in the hope that it will be entertaining and useful,
11 * but WITHOUT WARRANTY. Please see the Spelunky User License for more details.
13 * The Spelunky User License should be available in "Game Information", which
14 * can be found in the Resource Explorer, or as an external file called COPYING.
15 * If not, please obtain a new copy of Spelunky from <http://spelunkyworld.com/>
17 **********************************************************************************/
19 class MapObjSplash['oSplash'] : MapObject;
22 override bool initialize () {
23 if (!::initialize()) return false;
29 override void onAnimationLooped () {
34 override void thinkFrame () {
45 // ////////////////////////////////////////////////////////////////////////// //
47 class MapObjBubble['oBubble'] : MapObject;
50 override bool initialize () {
51 if (!::initialize()) return false;
53 yVel = -global.randOther(1, 3)*0.1;
54 imageSpeed = global.randOther(5, 20)/100.0;
55 fltx += global.randOther(-2, 2);
56 flty += global.randOther(-2, 2);
61 override void onAnimationLooped () {
66 override void thinkFrame () {
68 if (level.isSolidAtPoint(ix, iy) || !level.isLiquidAtPoint(ix, iy)) {
69 //writeln("solid: ", level.isSolidAtPoint(ix, iy), "; liquid: ", level.isLiquidAtPoint(ix, iy));