Advertisement
raverdave

Untitled

Jun 9th, 2018
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.88 KB | None | 0 0
  1. /*
  2.  * dude.prg by david wheeler
  3.  * (c) 2018 hope
  4.  */
  5. compiler_options _extended_conditions;
  6. PROGRAM dude;
  7. //
  8.     const
  9.     maxsprites=9000;
  10.     global
  11.         mymap;
  12.         fin;
  13.         file1;
  14.         gridx=16;
  15.         gridy=16;
  16.         arrpointer=0;
  17.         group=1;
  18.         currentgraph=3;
  19.         mytext;
  20.         v$="";
  21. //
  22.         struct mysprite[maxsprites]
  23.             int mypic;
  24.             group;
  25.             xpos;
  26.             ypos;
  27.             sc;
  28.             dpth;
  29.         end
  30. //
  31. BEGIN
  32.     //set_mode(m1024x760);
  33.     mymap=new_map(4000,800,0,0,0);
  34.     file1=load_fpg("test5.fpg");
  35.     start_scroll(0,0,mymap,0,0,4);
  36.     scroll.camera=id;
  37.     // Defines scroll region after which it will move
  38.    // scroll.region1=define_region(1,160,100,1,1);
  39.     //Write your code here, make something amazing!
  40.     currentimage(currentgraph,300,170);
  41.     mycursor(0,0);
  42.     mytext=write_int(0,300,160,0,offset currentgraph );
  43.     FRAME;
  44. end
  45.  
  46.  
  47.  
  48. process mycursor(x,y);
  49. Begin
  50.  graph=1;
  51.  flags=4;
  52.     ctype=c_scroll;
  53.      scroll.camera=id;
  54.        priority=1;
  55.     REPEAT
  56.       if(scan_code == 57)
  57.         switch(group)
  58.         case 1;
  59.          map_put(0,mymap,currentgraph,x,y);
  60.          // myspite(arrpointer).xpos=x;
  61.          mysprite[arrpointer].xpos=x;
  62.          mysprite[arrpointer].ypos=y;
  63.          mysprite[arrpointer].mypic=currentgraph;
  64.          mysprite[arrpointer].group=group;
  65.          arrpointer++;
  66.                 end
  67.          case 2;
  68.          makemygenericsprite(graph,x,y,group);
  69.          mysprite[arrpointer].xpos=x;
  70.          mysprite[arrpointer].ypos=y;
  71.          mysprite[arrpointer].mypic=currentgraph;
  72.          mysprite[arrpointer].group=group;
  73.  
  74.          arrpointer++;
  75.  
  76.          end
  77.                  //put(file1,1,0,0);
  78.          end
  79.            refresh_scroll(0);
  80.  
  81.       end
  82.         if(key(_q))
  83.             fin=1;
  84.         end
  85.  
  86.       if(scan_code == 44)
  87.  
  88.         currentgraph--;
  89.       end
  90.       if(scan_code == 45)
  91.  
  92.         currentgraph++;
  93.       end
  94.  
  95.       if(scan_code == 77)
  96.  
  97.         x+=gridx;
  98.       end
  99.         if(scan_code == 75)
  100.  
  101.         x-=gridx;
  102.       end
  103.      if(scan_code == 80)
  104.  
  105.         y+=gridy;
  106.       end
  107.      if(scan_code == 72)
  108.  
  109.         y-=gridy;
  110.       end
  111.     if(scan_code == 60)
  112.        mytext=write(0,0,0,0,"Saving...");
  113.       frame;
  114.  
  115.        save("level.dat",offset mysprite, sizeof(mysprite));
  116.         delete_text(mytext);
  117.  
  118.     end
  119.     if(scan_code == 59)
  120.      mytext=write(0,0,0,0,"Loading...");
  121.       frame;
  122.  
  123.        clear_mymap();
  124.        frame;
  125.        load("level.dat",offset mysprite);
  126.        arrpointer=0;
  127.        x=0;
  128.        y=0;
  129.        let_me_alone();
  130.        setup_level();
  131.        currentimage(currentgraph,300,170);
  132.         delete_text(mytext);
  133.  
  134.     end
  135.       if(scan_code == 46)
  136.       mytext=write(0,0,0,0,"clearing...");
  137.       frame;
  138.        clear_mymap();
  139.        arrpointer=0;
  140.        x=0;
  141.        y=0;
  142.        delete_text(mytext);
  143.        frame;
  144.       end
  145.     frame;
  146.     UNTIL(fin==1)
  147.      let_me_alone();
  148.  
  149. end
  150. Process makemygenericsprite(graph,x,y,group);
  151. begin
  152.   ctype=c_scroll;
  153.   loop
  154.     frame;
  155.   end
  156. end
  157. process currentimage(graph,x,y);
  158. begin
  159.    loop
  160.     graph=currentgraph;
  161.     frame;
  162.     end
  163. end
  164. function setup_level();
  165. private
  166.     n=0;
  167.     begin
  168.         for(n=0;n<maxsprites;n++);
  169.             if (mysprite[n].group==1)
  170.                   map_put(0,mymap,mysprite[n].mypic,mysprite[n].xpos,mysprite[n].ypos);
  171.                   arrpointer++;
  172.                    frame(0);
  173.            end
  174.           end
  175.         refresh_scroll(0);
  176.           frame;
  177.  
  178.     end
  179.  
  180. function clear_mymap();
  181. private
  182.     dx=0;
  183.     dy=0;
  184.     n=0;
  185.  begin
  186.          for(dx=0;dx<3999;dx++);
  187.             for(dy=0;dy<799;dy++);
  188.                 map_put_pixel(0,mymap,dx,dy,0);
  189.                 frame(0);
  190.             end
  191.         end
  192.  
  193.      refresh_scroll(0);
  194.  
  195.     frame;
  196.  end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement