Advertisement
Nightseeker

The Death and Return of Superman code fragment

Mar 13th, 2020
617
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 4.00 KB | None | 0 0
  1.     wait_until_0();
  2.  
  3.     // zone 4
  4.     next_zone((166*8));
  5.  
  6.     make_banjo_rgt(0);
  7.     make_molatav_lft(0);
  8.     wait_until_0();
  9.     make_bike_lft(0);
  10.     make_banjo_rgt(20);
  11.     wait_while_3();
  12.     make_molatav_rgt(-20);
  13.     wait_until_0();
  14.  
  15.     // zone 5
  16.     next_zone((226*8));
  17.  
  18.     make_molatav_rgt(0);
  19.     make_banjo_lft(0);
  20.     wait_while_2();
  21.     make_molatav_lft(0);
  22.     make_banjo_rgt(0);
  23.     wait_while_3();
  24.     make_molatav_rgt(0);
  25.     wait_until_0();
  26.  
  27.     // zone 6
  28.     next_zone((278*8));
  29.  
  30.     make_banjo_lft(0);
  31.     make_molatav_rgt(0);
  32.     wait_until_0();
  33.     make_bike_rgt(0);
  34.     make_banjo_lft(20);
  35.     wait_while_3();
  36.     make_molatav_rgt(-20);
  37.     wait_until_0();
  38.  
  39.     sleep((20));
  40.     l.msg = MSG_EXIT_STAGE;
  41.     nap_loop();
  42. }  
  43.  
  44. t_coast3()
  45. {
  46.     g.break_offset = 17;
  47.     g.glass_offset = 0;
  48.  
  49.     g.floor = ((38*8)-1);
  50. //goto skip;
  51.  
  52.     // zone 1
  53.     next_zone((10*8));
  54.    
  55.     choose_guard_left();
  56.     make_robot_rgt(0);
  57.     wait_while_2();
  58.     make_tick_ship1();
  59.     wait_until_0();
  60.  
  61.     // zone 2
  62.     next_zone((54*8));
  63.  
  64.     choose_guard_left();
  65.     make_robot_rgt(30);
  66.     wait_while_2();
  67.     choose_guard_left();
  68.     choose_guard_right();
  69.     wait_while_3();
  70.     wait_while_2();
  71.     sleep(1);
  72.     make_tick_ship1();
  73.     wait_until_0();
  74.  
  75.     // globes
  76.     next_zone((84*8));
  77.     do_globes(25);
  78.     wait_until_0();
  79.  
  80.     // zone 3
  81.     next_zone((130*8));
  82.    
  83.     choose_guard_left();
  84.     make_tick_ship1();
  85.     wait_while_3();
  86.     make_robot_rgt(-30);
  87.     wait_while_3();
  88.     choose_guard_left();
  89.     wait_until_0();
  90.  
  91.     // zone 4
  92.     next_zone((218*8));
  93.  
  94.     make_robot_rgt(30);
  95.     choose_guard_left();
  96.     choose_guard_right();
  97.     wait_while_3();
  98.     make_tick_rgt(30);
  99.     wait_while_3();
  100.     choose_guard_left();
  101.     wait_until_0();
  102.  
  103.     // zone 5
  104.     next_zone((272*8));
  105.  
  106. skip:
  107.     sleep(10);
  108.     boss_song();
  109.     make_object(CYBR_BOSS_OBJ, RIGHT_SIDE, g.floor, 0, 0, 0);  
  110.     wait_until_0();
  111.  
  112.     land_man();
  113.  
  114.     g.start_combat = 1;
  115.     l.msg = MSG_EXIT_STAGE;
  116.     l.parm = o.child;
  117.     nap_loop();
  118. }
  119.  
  120. t_missile()
  121. {
  122.     g.script_collide_pad = 24;
  123.  
  124.     g.floor = 0;
  125.     g.break_offset = 21;
  126.  
  127.     o.local = 0xfffe;
  128.  
  129.     o.local3 = 0;
  130.  
  131.     g.orbs_killed = 0;
  132.     o.health = 0;
  133.  
  134.     sleep((20*3));
  135.  
  136.     do {
  137.         reg = g.orbs_killed + 2;
  138.         if (reg >= o.health) o.health = g.orbs_killed;
  139.         o.local2 = 2;
  140.         do {
  141.             make_object(ORB_OBJ, RIGHT_SIDE, (VISIBLE_HGT/2), 0, 0, o.local3);
  142.             sleep(7);
  143.             o.local2--;
  144.         } while (o.local2 != 0);
  145.         o.local3++;
  146.  
  147.         sleep(40);
  148.         reg = o.health + 2;
  149.         if (reg == g.orbs_killed) {
  150.             o.health = reg + 12;
  151.             if (l.top < (112-16)) o.local2 = (112+33);
  152.             else o.local2 = (112-32);
  153.             make_object(HEALTH_POWERUP_OBJ, (VISIBLE_WDT), o.local2, 0, 0, 2);
  154.         }
  155.         else o.health = 0;
  156.     } while (g.missile_parts != -1);
  157.     nap_loop();
  158. }
  159.  
  160. t_level8a()
  161. {
  162.     g.break_offset = 40;
  163.     g.mode = FLYING;
  164.     o.local = 0xfffe;
  165.  
  166.     g.low_z_bound = l.in;
  167.     g.high_z_bound = l.out;
  168.  
  169.     if (g.current_map == LEVEL08B_MAP) {
  170.         do {
  171.             if (o.health == 0) {
  172.                 sleep(50);
  173.                 make_object(EYE_OBJ, RIGHT_SIDE, 112, 0, 0, 0);
  174.             }
  175.             sleep(1);
  176.         } while (g.mscroll_pixel_x != g.map_pixel_rgt);
  177.  
  178.         sleep(10);
  179.         boss_song();
  180.         g.missile_parts = 1;
  181.         play_sound(SFX_DOOM_LAUGH);
  182.  
  183.         do {
  184.             make_object(EYE_OBJ, RIGHT_SIDE, 112, 0, 0, 0);
  185.             sleep(10);
  186.             do sleep(1); while (o.health == 3);
  187.         } while (g.missile_parts != -1);
  188.         g.disable_joypad = 1;
  189.     }
  190.    
  191.     nap_loop();
  192. }
  193.  
  194. t_default()
  195. {
  196.     g.floor = 0;
  197.  
  198.     next_zone(g.map_pixel_rgt - 9);
  199.     teleport();
  200. }
  201.  
  202.  
  203. public next_zone(o.local)
  204. {
  205.     reg = g.map_pixel_rgt + 322;    //because map_pixel_rgt is left edge of rightmost screen
  206.     if (reg < o.local) teleport();
  207.  
  208. next_zone_no_teleport::
  209.  
  210.     g.open_door = 0;
  211.  
  212.     o.timer = ARROW_DELAY;
  213.    
  214.     o.local3 = o.local - 8;
  215.     do {
  216.         sleep(1);
  217.     } while (o.x < o.local3 || o.health != 0);
  218.            
  219.     o.timer = 0;
  220. }
  221.  
  222. *_default);
  223. /*****/
  224.     switch (g.current_map) {
  225.         case LEVEL01A_MAP: init_thread(t_factory1); break;
  226.         case LEVEL01B_MAP: init_thread(t_factory2);
  227.                    break;
  228.         case LEVEL01C_MAP: init_thread(t_factory3);
  229.             g.teleport_map = TOON2_1_MAP;
  230.             break;
  231.         case LEVEL02A_MAP: init_thread(t_city1); break;
  232.         case LEVEL02B_MAP: init_thread(t_city2);
  233.             g.teleport_map = TOON
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement