Advertisement
Neutrosider

thinkfigure(player *figur)

Mar 3rd, 2012
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 4.33 KB | None | 0 0
  1. void thinkfigure(player *figur){
  2.     if(figur->ani==1){
  3.         figur->substate++;
  4.         if(figur->substate>=figur->speed) figur->substate=0;
  5.         switch(figur->faceing){
  6.             case 1:
  7.                 switch(figur->state){
  8.                     case 1:
  9.                         if(figur->bildnummer==0)figur->y-=(8/figur->speed);
  10.                         if(figur->substate==0){
  11.                             figur->bildnummer=1;
  12.                             figur->ani=0;
  13.                         }
  14.                     break;
  15.                     case 4:
  16.                         figur->y-=(8/figur->speed);
  17.                         if(figur->substate==0){
  18.                             figur->bildnummer=0;
  19.                             figur->state=1;
  20.                         }
  21.                     break;
  22.                     case 3:
  23.                         figur->y-=(8/figur->speed);
  24.                         if(figur->substate==0){
  25.                             figur->bildnummer=1;
  26.                             figur->state=4;
  27.                         }
  28.                     break;
  29.                     case 2:
  30.                         if(figur->substate==1){
  31.                             if(collusion[figur->posby-1][figur->posbx]==0 && figur->posby>0){
  32.                                 collusion[figur->posby-1][figur->posbx]=1;
  33.                                 collusion[figur->posby][figur->posbx]=0;
  34.                                 figur->posby--;
  35.                             }else{
  36.                                 figur->substate=0;
  37.                                 figur->ani=0;
  38.                                 figur->bildnummer=1;
  39.                                 break;
  40.                             }
  41.                         }
  42.                         figur->y-=(8/figur->speed);
  43.                         if(figur->substate==0){
  44.                             figur->bildnummer=2;
  45.                             figur->state=3;
  46.                         }
  47.                     break;
  48.                 }
  49.             break;
  50.             case 2:
  51.                 switch(figur->state){
  52.                     case 1:
  53.                         if(figur->bildnummer==3)figur->x+=(8/figur->speed);
  54.                         if(figur->substate==0){
  55.                             figur->bildnummer=4;
  56.                             figur->ani=0;
  57.                         }
  58.                     break;
  59.                     case 4:
  60.                         figur->x+=(8/figur->speed);
  61.                         if(figur->substate==0){
  62.                             figur->bildnummer=3;
  63.                             figur->state=1;
  64.                         }
  65.                     break;
  66.                     case 3:
  67.                         figur->x+=(8/figur->speed);
  68.                         if(figur->substate==0){
  69.                             figur->bildnummer=4;
  70.                             figur->state=4;
  71.                         }
  72.                     break;
  73.                     case 2:
  74.                         if(figur->substate==1){
  75.                             if(collusion[figur->posby][figur->posbx+1]==0 && figur->posbx<mapbreite){
  76.                                 collusion[figur->posby][figur->posbx+1]=1;
  77.                                 collusion[figur->posby][figur->posbx]=0;
  78.                                 figur->posbx++;
  79.                             }else{
  80.                                 figur->substate=0;
  81.                                 figur->ani=0;
  82.                                 figur->bildnummer=4;
  83.                                 break;
  84.                             }
  85.                         }
  86.                         figur->x+=(8/figur->speed);
  87.                         if(figur->substate==0){
  88.                             figur->bildnummer=5;
  89.                             figur->state=3;
  90.                         }
  91.                     break;
  92.                 }
  93.             break;
  94.             case 3:
  95.                 switch(figur->state){
  96.                     case 1:
  97.                         if(figur->bildnummer==6)figur->y+=(8/figur->speed);
  98.                         if(figur->substate==0){
  99.                             figur->bildnummer=7;
  100.                             figur->ani=0;
  101.                         }
  102.                     break;
  103.                     case 4:
  104.                         figur->y+=(8/figur->speed);
  105.                         if(figur->substate==0){
  106.                             figur->bildnummer=6;
  107.                             figur->state=1;
  108.                         }
  109.                     break;
  110.                     case 3:
  111.                         figur->y+=(8/figur->speed);
  112.                         if(figur->substate==0){
  113.                             figur->bildnummer=7;
  114.                             figur->state=4;
  115.                         }
  116.                     break;
  117.                     case 2:
  118.                         if(figur->substate==1){
  119.                             if(collusion[figur->posby+1][figur->posbx]==0 && figur->posby<maphoehe){
  120.                                 collusion[figur->posby+1][figur->posbx]=1;
  121.                                 collusion[figur->posby][figur->posbx]=0;
  122.                                 figur->posby++;
  123.                             }else{
  124.                                 figur->substate=0;
  125.                                 figur->ani=0;
  126.                                 figur->bildnummer=7;
  127.                                 break;
  128.                             }
  129.                         }
  130.                         figur->y+=(8/figur->speed);
  131.                         if(figur->substate==0){
  132.                             figur->bildnummer=8;
  133.                             figur->state=3;
  134.                         }
  135.                     break;
  136.                 }
  137.             break;
  138.             case 4:
  139.                 switch(figur->state){
  140.                     case 1:
  141.                         if(figur->bildnummer==9)figur->x-=(8/figur->speed);
  142.                         if(figur->substate==0){
  143.                             figur->bildnummer=10;
  144.                             figur->ani=0;
  145.                         }
  146.                     break;
  147.                     case 4:
  148.                         figur->x-=(8/figur->speed);
  149.                         if(figur->substate==0){
  150.                             figur->bildnummer=9;
  151.                             figur->state=1;
  152.                         }
  153.                     break;
  154.                     case 3:
  155.                         figur->x-=(8/figur->speed);
  156.                         if(figur->substate==0){
  157.                             figur->bildnummer=10;
  158.                             figur->state=4;
  159.                         }
  160.                     break;
  161.                     case 2:
  162.                         if(figur->substate==1){
  163.                             if(collusion[figur->posby][figur->posbx-1]==0 && figur->posbx>0){
  164.                                 collusion[figur->posby][figur->posbx-1]=1;
  165.                                 collusion[figur->posby][figur->posbx]=0;
  166.                                 figur->posbx--;
  167.                             }else{
  168.                                 figur->substate=0;
  169.                                 figur->ani=0;
  170.                                 figur->bildnummer=10;
  171.                                 break;
  172.                             }
  173.                         }
  174.                         figur->x-=(8/figur->speed);
  175.                         if(figur->substate==0){
  176.                             figur->bildnummer=11;
  177.                             figur->state=3;
  178.                         }
  179.                     break;
  180.                 }
  181.             break;
  182.         }
  183.     }
  184. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement