Develop and Download Open Source Software

Browse Subversion Repository

Diff of /Unit1.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 4 by yamat0jp, Fri Jul 10 23:55:37 2015 UTC revision 5 by yamat0jp, Sun Sep 6 02:21:34 2015 UTC
# Line 99  type Line 99  type
99      GameParam: TGameParam;      GameParam: TGameParam;
100      TextColor: TColor;      TextColor: TColor;
101      Name: string;      Name: string;
102        Sleeps: Boolean;
103      constructor Create;      constructor Create;
104      destructor Destroy; override;      destructor Destroy; override;
105      procedure Start(const Resume: Boolean = false);      procedure Start(const Resume: Boolean = false);
# Line 334  begin Line 335  begin
335        Player1.State := Stop;        Player1.State := Stop;
336      end;      end;
337      Player1.Execute;      Player1.Execute;
338        if Player1.Sleeps = true then
339          Sleep(100)
340        else
341          Player1.Sleeps:=true;
342      FormPaint(Player1);      FormPaint(Player1);
343      Done := false;      Done := false;
344    end    end
# Line 879  procedure TPlayer.Execute; Line 884  procedure TPlayer.Execute;
884  var  var
885    i, j: integer;    i, j: integer;
886    s: TBall;    s: TBall;
   
887  begin  begin
888    case State of    case State of
889      Down:      Down:
# Line 893  begin Line 897  begin
897            Item.Left := Item.Left + 1            Item.Left := Item.Left + 1
898          else          else
899            Item.Left := Item.Left - 1;            Item.Left := Item.Left - 1;
         Sleep(100);  
900        end        end
901        else        else
902        begin        begin
903          Move(Under);          Move(Under);
904          for i := 1 to 100 do          for i := 1 to 10 do
905          begin          begin
906            Sleep(3);            Sleep(30);
907            Application.ProcessMessages;            Application.ProcessMessages;
908            if State <> Down then            if State <> Down then
909              break;              break;
910          end;          end;
911            Sleeps:=false;
912        end;        end;
913      Shoot:      Shoot:
       begin  
914          Move(Under);          Move(Under);
         Sleep(100);  
       end;  
915      Sys:      Sys:
916        if Drop = true then        if Drop = false then
         Sleep(100)  
       else if Remove = true then  
       begin  
         State := Effect;  
         EffectCount := 1;  
       end  
       else  
917        begin        begin
918          State := Ojama;          Sleeps:=false;
919          if Assigned(FOnCreateOjama) = true then          if Remove = true then
920            if Zenkesi = true then          begin
921              FOnCreateOjama(Self, 2 * Wid, '**全消し**')            State := Effect;
922            else if GameParam.Rensa > 1 then            EffectCount := 1;
923              FOnCreateOjama(Self, GameParam.Rensa - 1,          end
924                Name + Format(' %d 連鎖', [GameParam.Rensa]));          else
925            begin
926              State := Ojama;
927              if Assigned(FOnCreateOjama) = true then
928                if Zenkesi = true then
929                  FOnCreateOjama(Self, 2 * Wid, '**全消し**')
930                else if GameParam.Rensa > 1 then
931                  FOnCreateOjama(Self, GameParam.Rensa - 1,
932                    Name + Format(' %d 連鎖', [GameParam.Rensa]));
933            end;
934        end;        end;
935      Effect:      Effect:
936        begin        begin
# Line 943  begin Line 946  begin
946                    Ground[i, j].Index := 0;                    Ground[i, j].Index := 0;
947                  end;                  end;
948          end;          end;
         Sleep(100);  
949          dec(EffectCount);          dec(EffectCount);
950        end;        end;
951      Ojama:      Ojama:
952        if OjamaList.Count = 0 then        if OjamaList.Count = 0 then
953          Start        begin
954            Start;
955            Sleeps:=false;
956          end
957        else        else
958        begin        begin
959          for i := 0 to OjamaList.Count - 1 do          for i := 0 to OjamaList.Count - 1 do
# Line 960  begin Line 965  begin
965            else if (s.Y = 0) and (Ground[s.X, 0].Color <> clWhite) then            else if (s.Y = 0) and (Ground[s.X, 0].Color <> clWhite) then
966            begin            begin
967              State := Stop;              State := Stop;
968                Sleeps:=false;
969              Exit;              Exit;
970            end            end
971            else            else
# Line 977  begin Line 983  begin
983              OjamaList.Delete(i);              OjamaList.Delete(i);
984            end;            end;
985          end;          end;
         Sleep(100);  
986        end;        end;
987    end;    end;
988  end;  end;

Legend:
Removed from v.4  
changed lines
  Added in v.5

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26