void InitMovement(Game_Pawn aPawn) { aPawn.SetPhysics(Movement); aPawn.GroundSpeed = GroundSpeed; //aPawn.bCanWalk = GroundSpeed > 0.00000000; aPawn.AirSpeed = AirSpeed; //aPawn.bCanFly = AirSpeed > 0.00000000; //aPawn.MinFlySpeed = AirMinSpeed; aPawn.AirControl = AirControl; //aPawn.bCanStrafe = CanStrafe; //aPawn.bCanRest = CanRest; //aPawn.bCanWalkBackwards = CanWalkBackwards; //if (aPawn.bCanFly) //{ // aPawn.CharacterStats.mBaseMovementSpeed = (int)AirSpeed; //} //else { aPawn.CharacterStats.mBaseMovementSpeed = (int)GroundSpeed; } if (CombatSpeed >= 0) { aPawn.CharacterStats.mMovementSpeedMultiplier[1] = CombatSpeed / GroundSpeed; } if (GroundSpeed >= 1) { aPawn.WalkingPct = StrollSpeed / GroundSpeed; } aPawn.WaterSpeed = WaterSpeed; //aPawn.bCanSwim = WaterSpeed > 0.00000000; aPawn.JumpZ = JumpSpeed; //aPawn.bCanJump = JumpSpeed > 0.00000000; //aPawn.LadderSpeed = ClimbSpeed; //aPawn.bCanClimbLadders = ClimbSpeed > 0.00000000; aPawn.AccelRate = AccelRate; aPawn.RotationRate.Yaw = (int)TurnSpeed; aPawn.RotationRate.Pitch = (int)TurnSpeed; aPawn.RotationRate.Roll = (int)TurnSpeed; //aPawn.bAlignToFloor = bAlignToFloor; //aPawn.bAlignToFloorRoll = bAlignToFloorRoll; //aPawn.bAlignToFloorPitch = bAlignToFloorPitch; //aPawn.bForceSkelUpdate = bForceAttachmentUpdates; aPawn.SetCollisionSize(GetCollisionRadius(), GetCollisionHeight()); //aPawn.mMaxDamageFallSpeed = TerminalVelocity; //aPawn.mMinDamageFallSpeed = TerminalVelocity * 0.75000000; //if (Movement == Actor.EPhysics.PHYS_Flying) //{ // aPawn.bCanFly = true; //} }
public Game_Appearance CreateAppearance(Game_Pawn aPawn, Game_Appearance aAppearance, bool aShifting) { float R; float H; aPawn.SkillRadius = GetSkillRadius(); if (!aShifting) { R = GetCollisionRadius(); H = GetCollisionHeight(); if (R >= 0 && H >= 0) { aPawn.SetCollisionSize(R, H); } } if (aAppearance != null) { switch (Voice) { case 0: aAppearance.SetVoice(255); break; case 9: if (aAppearance.IsKid()) { if (aAppearance.GetGender() == 0) { aAppearance.SetVoice(Rand(1)); } else { aAppearance.SetVoice(Rand(2)); } } else { aAppearance.SetVoice((byte)(10 + Rand(14))); } break; default: aAppearance.SetVoice((byte)(Voice - 1)); break; } //aAppearance.SetAvatarTexture(AvatarTexture); } return(aAppearance); }