4087 {
4089 {
4092 Car car;
4093 Boat boat;
4094 float damage;
4095 vector impulse;
4096
4097
4098 if (Car.CastTo(car, transport))
4099 {
4100 if (car.GetSpeedometerAbsolute() > 2 )
4101 {
4103 ProcessDirectDamage(DT_CUSTOM, transport, "", "TransportHit", "0 0 0", damage);
4104 }
4105 else
4106 {
4108 }
4109
4110
4111 if (IsDamageDestroyed() && car.GetSpeedometerAbsolute() > 3)
4112 {
4114 impulse[1] = 40 * 1.5;
4116 }
4117 }
4118 else if (Boat.CastTo(boat, transport))
4119 {
4120 Human player = Human.Cast(this);
4122 {
4124 return;
4125 }
4126
4128 {
4130 ProcessDirectDamage(DT_CUSTOM, transport, "", "TransportHit", "0 0 0", damage);
4131 }
4132 else
4134 }
4135 else
4136 {
4137
4139 {
4141 ProcessDirectDamage(DT_CUSTOM, transport, "", "TransportHit", "0 0 0", damage);
4142 }
4143 else
4144 {
4146 }
4147
4148
4150 {
4152 impulse[1] = 40 * 1.5;
4154 }
4155 }
4156 }
4157 }
bool m_TransportHitRegistered
vector m_TransportHitVelocity
proto native IEntity PhysicsGetLinkedEntity()
entity we are linked to (not valid when IEntity.GetParent() returns some entity)
proto native vector GetVelocity(notnull IEntity ent)
Returns linear velocity.
proto void dBodyApplyImpulse(notnull IEntity body, vector impulse)
Applies impuls on a rigidbody (origin)