Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void undo(void)
- {
- int i1,j1,i2,j2;
- char eaten;
- char piece;
- int checker;
- if(turn==2)
- {
- if(pointer1<=0){
- printf("No thing to undo.\nPlease play a move.");
- movement();
- return;
- }else{
- i2=steps1[pointer1].domain1i;
- j2=steps1[pointer1].domain1j;
- i1=steps1[pointer1].domain2i;
- j1=steps1[pointer1].domain2j;
- eaten=steps1[pointer1].eaten;
- piece=steps1[pointer1].piece;
- domain[i2][j2]=piece;
- domain[i1][j1]=eaten;
- if(domain[i1][j1]=='k')
- {
- kp1i=i2;
- kp1j=j2;
- }
- if(isupper(domain[i1][j1])){
- number_killed2--;}
- pointer1--;
- }
- blackandwhite(i1,j1);
- }
- else
- {
- if(pointer2<=0){
- printf("No thing to undo.\nPlease play a move.");
- movement();
- return;
- }else{
- i2=steps2[pointer2].domain1i;
- j2=steps2[pointer2].domain1j;
- i1=steps2[pointer2].domain2i;
- j1=steps2[pointer2].domain2j;
- eaten=steps2[pointer2].eaten;
- piece=steps2[pointer2].piece;
- domain[i2][j2]=piece;
- domain[i1][j1]=eaten;
- if(domain[i1][j1]=='K')
- {
- kp2i=i2;
- kp2j=j2;
- }
- if(islower(domain[i1][j1])){
- number_killed1--;}
- }
- blackandwhite(i1,j1);
- pointer2--;
- }
- }
- void redo(void)
- {
- int i1,j1,i2,j2;
- char eaten,piece;
- if(turn==1)
- {
- if(pointer1==counter_steps1)
- {
- printf("You can't re-do.\nPlease play a move.");
- movement();
- return;
- }
- else
- {
- pointer1++;
- i1=steps1[pointer1].domain1i;
- j1=steps1[pointer1].domain1j;
- i2=steps1[pointer1].domain2i;
- j2=steps1[pointer1].domain2j;
- eaten=steps1[pointer1].eaten;
- piece=steps1[pointer1].piece;
- if(isupper(domain[i2][j2])){
- killed2[number_killed2]=eaten;
- number_killed2++;
- }
- if(domain[i1][j1]=='p' && i2==7)
- {
- premote(&domain[i1][j1]);
- }
- domain[i2][j2]=domain[i1][j1];
- occupied[i1][j1]=0;
- if(domain[i2][j2]=='k')
- {
- kp1i=i2;
- kp1j=j2;
- }
- blackandwhite(i1,j1);
- }
- }else
- {
- if(pointer2==counter_steps2)
- {
- printf("You can't re-do.\nPlease play a move.");
- movement();
- return;
- }
- else
- {
- pointer2++;
- i1=steps2[pointer2].domain1i;
- j1=steps2[pointer2].domain1j;
- i2=steps2[pointer2].domain2i;
- j2=steps2[pointer2].domain2j;
- eaten=steps2[pointer2].eaten;
- piece=steps1[pointer1].piece;
- if(islower(domain[i2][j2]))
- {
- killed1[number_killed1]=eaten;
- number_killed1++;
- }
- if(domain[i1][j1]=='P' && i2==0)
- {
- premote(&domain[i1][j1]);
- }
- domain[i2][j2]=domain[i1][j1];
- occupied[i1][j1]=0;
- if(domain[i2][j2]=='K')
- {
- kp2i=i2;
- kp2j=j2;
- }
- blackandwhite(i1,j1);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement