• API
• FAQ
• Tools
• Archive
daily pastebin goal
16%
SHARE
TWEET

# Untitled

a guest Mar 23rd, 2019 54 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
1. /**********************
2.  * superDrEvalBros.js *
3.  **********************
4.  *
5.  * You're still here?! Well, Dr. Eval, let's see
6.  * how well you can operate with one less dimension.
7.  *
8.  * Give up now. Unless you have a magic mushroom
9.  * up your sleeve, it's all over.
10.  */
11.
12. function startLevel(map) {
13.     var fl = Math.floor;
14.     var w = map.getWidth();
15.     var h = map.getHeight();
16.
17.     map.placePlayer(1, fl(h/2)-1);
18.     var player = map.getPlayer();
19.
20.     map.placeObject(w-1, fl(h/2)-1, 'exit');
21.
22.     for (var x = 0; x < fl(w/2) - 5; x++) {
23.         for (var y = fl(h/2); y < h; y++) {
24.             map.placeObject(x, y, 'block');
25.         }
26.     }
27.
28.     for (var x = fl(w/2) + 5; x <= w; x++) {
29.         for (var y = fl(h/2); y < h; y++) {
30.             map.placeObject(x, y, 'block');
31.         }
32.     }
33.
34.     function gravity() {
35.         var x = player.getX();
36.         var y = player.getY() + 1;
37.
38.         if (y === map.getHeight() - 2) {
39.             player.killedBy("gravity");
40.         }
41.
42.         if (map.getObjectTypeAt(x,y) === "empty") {
43.             player.move("down");
44.         }
45.
46.     }
47.     map.startTimer(gravity, 45);
48.
49.     function jump() {
50.         map.defineObject('myBridge', {
51.         'symbol'     : '░',
52.         'color'      : 'purple',
53.         'impassable' : true,
54.       });
55.
56.       for (var x = fl(w/2) - 5; x < fl(w/2) + 5; x++) {
57.         map.placeObject(x, fl(h/2), 'myBridge');
58.
59.       }
60.
61.
62.
63.
64.
65.
66.     }
67.
68.     player.setPhoneCallback(function () {
69.         var x = player.getX();
70.         var y = player.getY() + 1;
71.
72.         if (map.getObjectTypeAt(x,y) !== "empty") {
73.             jump();
74.         }
75.     });
76. }
77.
78. function validateLevel(map) {
79.     map.validateExactlyXManyObjects(1, 'exit');
80.     map.validateExactlyXManyObjects(520, 'block');
81. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy.

Top