equal
deleted
inserted
replaced
1411 |
1411 |
1412 begin |
1412 begin |
1413 HHGear := Gear^.Hedgehog^.Gear; |
1413 HHGear := Gear^.Hedgehog^.Gear; |
1414 |
1414 |
1415 if ((HHGear^.State and gstHHDriven) = 0) |
1415 if ((HHGear^.State and gstHHDriven) = 0) |
1416 or (CheckGearDrowning(HHGear)) then |
1416 or (CheckGearDrowning(HHGear)) or (Gear^.PortalCounter <> 0) then |
1417 begin |
1417 begin |
1418 PlaySound(sndRopeRelease); |
1418 PlaySound(sndRopeRelease); |
1419 RopeDeleteMe(Gear, HHGear); |
1419 RopeDeleteMe(Gear, HHGear); |
1420 exit |
1420 exit |
1421 end; |
1421 end; |
3874 continue; |
3874 continue; |
3875 |
3875 |
3876 // don't port hogs on rope |
3876 // don't port hogs on rope |
3877 // TODO: this will also prevent hogs while falling after rope use from |
3877 // TODO: this will also prevent hogs while falling after rope use from |
3878 // falling through portals... fix that! |
3878 // falling through portals... fix that! |
3879 if (CurrentHedgehog <> nil) and (CurrentHedgehog^.Gear <> nil) |
|
3880 and (iterator = CurrentHedgehog^.Gear) and (CurAmmoGear <> nil) and (CurAmmoGear^.Kind = |
|
3881 gtRope) then |
|
3882 continue; |
|
3883 |
3879 |
3884 // check if gear fits through portal |
3880 // check if gear fits through portal |
3885 if (iterator^.Radius > Gear^.Radius) then |
3881 if (iterator^.Radius > Gear^.Radius) then |
3886 continue; |
3882 continue; |
3887 |
3883 |
4106 else |
4102 else |
4107 begin |
4103 begin |
4108 inc(iterator^.PortalCounter); |
4104 inc(iterator^.PortalCounter); |
4109 iterator^.State:= iterator^.State and (not gstHHHJump) |
4105 iterator^.State:= iterator^.State and (not gstHHHJump) |
4110 end; |
4106 end; |
|
4107 |
|
4108 if (CurrentHedgehog <> nil) and (CurrentHedgehog^.Gear <> nil) |
|
4109 and (iterator = CurrentHedgehog^.Gear) and (CurAmmoGear <> nil) and (CurAmmoGear^.Kind = |
|
4110 gtRope) then CurAmmoGear^.PortalCounter:= 1; |
4111 |
4111 |
4112 if not isbullet and (iterator^.Kind <> gtFlake) then |
4112 if not isbullet and (iterator^.Kind <> gtFlake) then |
4113 FollowGear := iterator; |
4113 FollowGear := iterator; |
4114 |
4114 |
4115 // store X/Y values of exit for net bullet trail |
4115 // store X/Y values of exit for net bullet trail |