hedgewars/GSHandlers.inc
changeset 1108 c77267d982ee
parent 1106 f868b7307003
child 1109 87c44c14fdd4
equal deleted inserted replaced
1107:ee873ada9e86 1108:c77267d982ee
  1502 	Gear^.Angle:= (Gear^.Angle + 4 + dA) mod 4
  1502 	Gear^.Angle:= (Gear^.Angle + 4 + dA) mod 4
  1503 	end;
  1503 	end;
  1504 	
  1504 	
  1505 begin
  1505 begin
  1506 inc(Gear^.Tag);
  1506 inc(Gear^.Tag);
  1507 if Gear^.Tag < 5 then exit;
  1507 if Gear^.Tag < 7 then exit;
  1508 
  1508 
  1509 dA:= hwSign(Gear^.dX);
  1509 dA:= hwSign(Gear^.dX);
  1510 xx:= dirs[Gear^.Angle].x;
  1510 xx:= dirs[Gear^.Angle].x;
  1511 yy:= dirs[Gear^.Angle].y;
  1511 yy:= dirs[Gear^.Angle].y;
  1512 xxn:= dirs[(Gear^.Angle + 4 + dA) mod 4].x;
  1512 xxn:= dirs[(Gear^.Angle + 4 + dA) mod 4].x;
  1553 procedure doStepCakeUp(Gear: PGear);
  1553 procedure doStepCakeUp(Gear: PGear);
  1554 var i: Longword;
  1554 var i: Longword;
  1555 begin
  1555 begin
  1556 AllInactive:= false;
  1556 AllInactive:= false;
  1557 
  1557 
       
  1558 inc(Gear^.Tag);
       
  1559 if Gear^.Tag < 85 then exit;
       
  1560 Gear^.Tag:= 0;
       
  1561 
       
  1562 if Gear^.Pos = 0 then
  1558 	begin
  1563 	begin
  1559 	for i:= 0 to Pred(cakeh) do
  1564 	for i:= 0 to Pred(cakeh) do
  1560 		begin
  1565 		begin
  1561 		CakePoints[i].x:= Gear^.X;
  1566 		CakePoints[i].x:= Gear^.X;
  1562 		CakePoints[i].y:= Gear^.Y
  1567 		CakePoints[i].y:= Gear^.Y
  1563 		end;
  1568 		end;
  1564 	CakeI:= 0;
  1569 	CakeI:= 0;
       
  1570 	Gear^.Pos:= 6;
  1565 	Gear^.doStep:= @doStepCakeWork
  1571 	Gear^.doStep:= @doStepCakeWork
  1566 	end
  1572 	end else dec(Gear^.Pos)
  1567 end;
  1573 end;
  1568 
  1574 
  1569 procedure doStepCakeFall(Gear: PGear);
  1575 procedure doStepCakeFall(Gear: PGear);
  1570 begin
  1576 begin
  1571 AllInactive:= false;
  1577 AllInactive:= false;