422 doStepPickHammerWork(Gear); |
422 doStepPickHammerWork(Gear); |
423 Gear.doStep:= doStepPickHammerWork |
423 Gear.doStep:= doStepPickHammerWork |
424 end; |
424 end; |
425 |
425 |
426 //////////////////////////////////////////////////////////////////////////////// |
426 //////////////////////////////////////////////////////////////////////////////// |
|
427 |
|
428 procedure doStepBlowTorch(Gear: PGear); |
|
429 var HHGear: PGear; |
|
430 begin |
|
431 AllInactive:= false; |
|
432 dec(Gear.Timer); |
|
433 HHGear:= PHedgehog(Gear.Hedgehog).Gear; |
|
434 if Gear.Timer mod cHHStepTicks = 0 then |
|
435 begin |
|
436 DrawTunnel(HHGear.X, HHGear.Y - 1, Gear.dX, 0, cHHRadius * 2, cHHRadius * 2); |
|
437 HHGear.State:= HHGear.State and not gstAttacking; |
|
438 if Gear.dX < 0 then HHGear.Message:= gm_Left |
|
439 else HHGear.Message:= gm_Right; |
|
440 HedgehogStep(HHGear); |
|
441 if (HHGear.State and gstFalling) <> 0 then Gear.Timer:= 0 |
|
442 end; |
|
443 if Gear.Timer = 0 then |
|
444 begin |
|
445 HHGear.Message:= 0; |
|
446 DeleteGear(Gear); |
|
447 AfterAttack |
|
448 end |
|
449 end; |
|
450 |
|
451 //////////////////////////////////////////////////////////////////////////////// |
|
452 |
427 procedure doStepRopeWork(Gear: PGear); |
453 procedure doStepRopeWork(Gear: PGear); |
428 const flCheck: boolean = false; |
454 const flCheck: boolean = false; |
429 var HHGear: PGear; |
455 var HHGear: PGear; |
430 len, cs, cc, tx, ty: Double; |
456 len, cs, cc, tx, ty: Double; |
431 lx, ly: LongInt; |
457 lx, ly: LongInt; |