equal
deleted
inserted
replaced
1850 HHGear: PGear; |
1850 HHGear: PGear; |
1851 b: boolean; |
1851 b: boolean; |
1852 prevX: LongInt; |
1852 prevX: LongInt; |
1853 begin |
1853 begin |
1854 AllInactive := false; |
1854 AllInactive := false; |
1855 WorldWrap(Gear); |
|
1856 dec(Gear^.Timer); |
1855 dec(Gear^.Timer); |
|
1856 |
|
1857 if WorldWrap(Gear) or (((Gear^.Timer) mod 500) = 0) then |
|
1858 begin |
|
1859 ClearHitOrder(); |
|
1860 RefillProximityCache(Gear, 100); |
|
1861 end; |
1857 |
1862 |
1858 if Gear^.Hedgehog^.Gear = nil then |
1863 if Gear^.Hedgehog^.Gear = nil then |
1859 begin |
1864 begin |
1860 StopSoundChan(Gear^.SoundChannel); |
1865 StopSoundChan(Gear^.SoundChannel); |
1861 DeleteGear(Gear); |
1866 DeleteGear(Gear); |
1916 begin |
1921 begin |
1917 Gear^.X := HHGear^.X + Gear^.dX * (cHHRadius + cBlowTorchC); |
1922 Gear^.X := HHGear^.X + Gear^.dX * (cHHRadius + cBlowTorchC); |
1918 Gear^.Y := HHGear^.Y + Gear^.dY * (cHHRadius + cBlowTorchC); |
1923 Gear^.Y := HHGear^.Y + Gear^.dY * (cHHRadius + cBlowTorchC); |
1919 end; |
1924 end; |
1920 HHGear^.State := HHGear^.State or gstNoDamage; |
1925 HHGear^.State := HHGear^.State or gstNoDamage; |
1921 AmmoShove(Gear, Gear^.Boom, 15); |
1926 AmmoShoveCache(Gear, Gear^.Boom, 15); |
1922 HHGear^.State := HHGear^.State and (not gstNoDamage) |
1927 HHGear^.State := HHGear^.State and (not gstNoDamage) |
1923 end; |
1928 end; |
1924 end; |
1929 end; |
1925 |
1930 |
1926 if b then |
1931 if b then |
1933 end; |
1938 end; |
1934 |
1939 |
1935 if (TurnTimeLeft = 0) or (Gear^.Timer = 0) |
1940 if (TurnTimeLeft = 0) or (Gear^.Timer = 0) |
1936 or ((HHGear^.Message and gmAttack) <> 0) then |
1941 or ((HHGear^.Message and gmAttack) <> 0) then |
1937 begin |
1942 begin |
|
1943 ClearHitOrder(); |
|
1944 ClearProximityCache(); |
1938 StopSoundChan(Gear^.SoundChannel); |
1945 StopSoundChan(Gear^.SoundChannel); |
1939 HHGear^.Message := 0; |
1946 HHGear^.Message := 0; |
1940 HHGear^.State := HHGear^.State and (not gstNotKickable); |
1947 HHGear^.State := HHGear^.State and (not gstNotKickable); |
1941 DeleteGear(Gear); |
1948 DeleteGear(Gear); |
1942 AfterAttack |
1949 AfterAttack |
1959 Gear^.dX, Gear^.dY, |
1966 Gear^.dX, Gear^.dY, |
1960 cHHStepTicks, cHHRadius * 2 + 7); |
1967 cHHStepTicks, cHHRadius * 2 + 7); |
1961 HHGear^.Message := 0; |
1968 HHGear^.Message := 0; |
1962 HHGear^.State := HHGear^.State or gstNotKickable; |
1969 HHGear^.State := HHGear^.State or gstNotKickable; |
1963 Gear^.SoundChannel := LoopSound(sndBlowTorch); |
1970 Gear^.SoundChannel := LoopSound(sndBlowTorch); |
1964 Gear^.doStep := @doStepBlowTorchWork |
1971 Gear^.doStep := @doStepBlowTorchWork; |
|
1972 |
|
1973 ClearHitOrder(); |
|
1974 RefillProximityCache(Gear, 100); |
1965 end; |
1975 end; |
1966 |
1976 |
1967 |
1977 |
1968 //////////////////////////////////////////////////////////////////////////////// |
1978 //////////////////////////////////////////////////////////////////////////////// |
1969 procedure doStepMine(Gear: PGear); |
1979 procedure doStepMine(Gear: PGear); |