Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Movimiento.h
00001 #include "mbed.h" 00002 00003 int mascarax; 00004 int limited=0; 00005 int limitei=0; 00006 void borrarfantasma (void) 00007 { 00008 int i; 00009 for(i=0;i<tamano;i++) 00010 screen[posicion-i]=screen[posicion-i] & ((mascara)-1); 00011 } 00012 00013 00014 void pmenos(void) 00015 { 00016 00017 if(limitei==0) 00018 { 00019 posicion_original=posicion_original-1;// determina hasta donde se mueve si chocar en la pared// cambiar en derecha 00020 pc.printf("Posicion original %d\n",posicion_original); 00021 } 00022 00023 00024 if(((posicion_original+tamano) <= 8 && (posicion_original-1) >= -1 ) && ((screen[posicion+1] & (~(mascara-1))) == 0)) 00025 { 00026 verificacion=1; 00027 pc.printf("Verificacion %d\n",verificacion); 00028 00029 } 00030 else 00031 { 00032 verificacion=0; 00033 velocidad= rapido; 00034 pc.printf("Verificacion %d\n",verificacion); 00035 limitei=1; 00036 } 00037 00038 if (verificacion==1) 00039 { 00040 borrarfantasma(); 00041 mascarax=mascara; 00042 velocidad= 0; 00043 limitei=0; 00044 } 00045 } 00046 00047 void pmas(void) 00048 { 00049 00050 if(limited==0) 00051 { 00052 posicion_original=posicion_original+1;// determina hasta donde se mueve si chocar en la pared 00053 pc.printf("Posicion original %d\n",posicion_original); 00054 pc.printf("Tamano %d\n",tamano); 00055 } 00056 00057 if(((posicion_original+tamano) <= 8 && (posicion_original-1) >= -1 ) && ((screen[posicion-(tamano)] & (~(mascara-1))) == 0)) 00058 { 00059 verificacion=1; 00060 pc.printf("Verificacion %d\n",verificacion); 00061 } 00062 else 00063 { 00064 verificacion=0; 00065 velocidad= rapido; 00066 pc.printf("Verificacion %d\n",verificacion); 00067 limited=1; 00068 } 00069 pc.printf("Screen en -1 %d\n",screen[posicion-(tamano)]); 00070 00071 if (verificacion==1) 00072 { 00073 borrarfantasma(); 00074 mascarax=mascara; 00075 velocidad= 0; 00076 limited=0; 00077 } 00078 00079 } 00080 00081 00082 00083 00084 void giro90(void) 00085 { 00086 giro=giro+1; 00087 00088 if(giro>3) 00089 giro=0; 00090 00091 00092 } 00093 00094 00095 00096 00097 00098 void giros(void) 00099 { 00100 int i; 00101 00102 if(tamano>tamano2) 00103 { 00104 borrarfantasma(); 00105 verificacion=1; 00106 tamano=tamano2; 00107 mascarax=mascara; 00108 velocidad= 0; 00109 giro90(); 00110 } 00111 else if (tamano<tamano2) 00112 { 00113 for(i=(tamano+1);i<=tamano2;i++) 00114 { 00115 00116 if (((posicion_original+tamano2) <= 8 ) && ((screen[posicion-(i)] & (~(mascara-1))) == 0)) 00117 { 00118 verificacion=1; 00119 tamano=tamano2; 00120 borrarfantasma(); 00121 velocidad= 0; 00122 giro90(); 00123 mascarax=mascara; 00124 break; 00125 } 00126 else 00127 { 00128 verificacion=0; 00129 } 00130 00131 00132 } 00133 } 00134 else // miden lo mismo 00135 { 00136 verificacion=1; 00137 tamano=tamano2; 00138 borrarfantasma(); 00139 velocidad= 0; 00140 mascarax=mascara; 00141 giro90(); 00142 } 00143 00144 00145 00146 00147 } 00148 00149
Generated on Wed Aug 10 2022 08:35:00 by
1.7.2