Battle Talent  V11
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Properties | Events | List of all members
CrossLink.FullBodyMuscleState Class Reference

Inherits MonoBehaviour.

Public Member Functions

void InitMuscleState ()
 
void InitPendants ()
 
void InitWeapons ()
 
void Teleport (Vector3 pos, Vector3 dir)
 
void ResetRole ()
 
void ProtectRagdollCCDForAWhile (float protectSec=0.5f)
 
void DetectPassThroughWalls (System.Action< FullBodyMuscleState, Rigidbody > onPassWall, float wallDis=10, float sec=4)
 
bool IsWeakPart (string name)
 
void CloseWeakPoints ()
 
MuscleArmor GetArmor (string muName)
 
Dictionary< string, MuscleArmorGetArmors ()
 
bool HasArmor (MuscleState state)
 
bool IsArmor (MuscleState state, Collider col)
 
void AddArmor (RagdollMuscle mu, MuscleArmor armor)
 
bool IsBrokenArmors (GameObject go)
 
void RemoveArmor (RagdollMuscle mu, bool playSound=false)
 
bool ReduceArmorHp (RagdollMuscle mu, float mlp)
 
void SetArmorCollidersEnable (bool e)
 
float PlayDeathAnim ()
 
void PlayDeathSound ()
 
bool IsPlayingKO ()
 
void DoKnockout ()
 
void DoKnockout (RagdollMuscle mu, Vector3 force)
 
void DoKnockoutReact (RagdollMuscle mu, Vector3 force, bool stab=false)
 
void KnockoutWithAnim (RagdollMuscle mu, Vector3 force, bool stab=false)
 
bool KeepKnocking (RagdollMuscle mu, Vector3 force)
 
MuscleState GetMuscleStateFromProfile (string name)
 
MuscleState GetMuscleState (RagdollMuscle mu)
 
MuscleState GetMuscleState (string muscleName)
 
void BuildCollisionState (RagdollMuscle mu)
 
void RemoveState (RagdollMuscle mu)
 
bool IsDissy ()
 
void RecoverDizzy ()
 
void EnterDizzy (float len=0.3f)
 
void DizzyToKnockout ()
 
void UpdateDizzyInCombat ()
 
void IgnoreThisPu (PhysicsUnit pu, float ct)
 
bool ShouldIgnoreThisPu (PhysicsUnit pu)
 
bool IsThrown ()
 
void DoThrowing (float sec=2)
 
void StopThrowing ()
 
bool IsNoFreezeSource ()
 
void AddFreezeSource (bool a)
 
bool IsFreezeRecently ()
 
bool IsFreeze ()
 
void EnableFreeze (bool e, RagdollMuscle mu=null)
 
void UnFreezeAgain (float sec, RagdollMuscle mu=null)
 
void PushMuscle (RagdollMuscle mu, PhysicsUnit src, float extraTime=0)
 
void MarkPushMuscleSrc (RagdollMuscle mu, PhysicsUnit src)
 
bool IsPushingMuscle (PhysicsUnit pu)
 
bool IsAlreadyBeingPush (RagdollMuscle mu)
 
void TickPushedMuscle ()
 
RagdollMuscle GetStabbedRagdollMuscle (StabObject.StabInfo si)
 
bool IsStabbedBy (StabObject so)
 
void ClearAllStab ()
 
void ClearAllAttachs ()
 
void MakeAllStabLoose ()
 
void LockStab (bool lockStab)
 
bool IsStabed ()
 
bool IsStabedAsGrab ()
 
bool IsStabbedBy (PhysicsUnit pu)
 
bool IsCuted ()
 
void CutRagdoll (Plane plane)
 
bool IsGrab ()
 
bool IsMuscleGrabbed (string muName)
 
bool IsMuscleGrabbed (RagdollMuscle mu)
 
void ClearGrabMuscles ()
 
void DoBodyGrab (RagdollMuscle mu, bool g)
 
bool IsPowerfulCharacter ()
 
bool IsLivingCreature ()
 
bool IsUnknockable ()
 
void UpdateCollisionRelationshipWithStabObject (StabObject so, Collider[] cols, bool ignore)
 
bool IsBodyPartEffectEnabled ()
 
void EnabldBodyPartEffect (bool e)
 
string[] PickBlockAnims (int handIndex, Vector3 forceDir)
 
string[] GetBlockAnims (ActionCombatData combatData)
 
void SetHitPos (Vector3 hitpos, Vector3 dir)
 
bool IsHitLately ()
 
Vector3 GetHitDir ()
 
Vector3 GetHitPos ()
 
float GetStiffLen ()
 
void DoStiff (float diff)
 
bool IsStiffing ()
 
void SetFootCollision (bool c)
 
void TightWrist (bool t=false)
 
bool IsBeingGrabed ()
 
bool CalcFastestRelatedHandSpeed (out InteractHand fh)
 
bool IsDoingAction ()
 
bool CanNotDoAction ()
 
bool CanDoAction ()
 
void ProtectForAWhile (float sec=0.5f)
 
void ProtectUntilGrounded (float sec=3f)
 
void TickCollisionRecord ()
 
void TickStayCollision (float ct)
 
delegate void DamageModifier (FullCharacterControl fc, RagdollMuscle mu, Collider thisCol, Rigidbody otherRB, Collider otherCol, Vector3 point, Vector3 normal, Vector3 relaVel)
 
void CalcDamageEnv (RagdollMuscle mu, Collider thisCol, Rigidbody otherRB, Collider otherCol, Vector3 point, Vector3 normal, Vector3 relaVel)
 
void CalcDamage (RagdollMuscle mu, Collider thisCol, Rigidbody otherRB, Collider otherCol, Vector3 point, Vector3 normal, Vector3 relaVel, PhysicsUnit otherPU=null)
 
void ApplyDamageEffect (DamageEffectData dmgEffectData, bool hurt)
 
float ApplyDamageHit (DamageHitData dmgHitData)
 

Static Public Member Functions

static float CalcRelaVelFactor (float relaVec)
 
static float GetHitAnimPob (InteractBase ib)
 
static void PlayDeadEffect (Vector3 pos, Quaternion rot)
 
static bool IsForwardPartOfWeapon (InteractBase weapon, Vector3 point, float zFactor=0.35f)
 
static void InstallBuildInDamageModifier ()
 
static void BuildInDamageAfterModifier (FullCharacterControl fc, RagdollMuscle mu, Collider thisCol, Rigidbody otherRB, Collider otherCol, Vector3 point, Vector3 normal, Vector3 relaVel)
 
static void BuildInBlockModifier (FullCharacterControl fc, RagdollMuscle mu, Collider thisCol, Rigidbody otherRB, Collider otherCol, Vector3 point, Vector3 normal, Vector3 relaVel)
 
static void BuildInGeneralModifier (FullCharacterControl fc, RagdollMuscle mu, Collider thisCol, Rigidbody otherRB, Collider otherCol, Vector3 point, Vector3 normal, Vector3 relaVel)
 
static void BuildInEnvModifier (FullCharacterControl fc, RagdollMuscle mu, Collider thisCol, Rigidbody otherRB, Collider otherCol, Vector3 point, Vector3 normal, Vector3 relaVel)
 
static void PlayContactSound (Vector3 pos, float force)
 

Public Attributes

FullCharacterControl fc
 
string[] weakPartMuscles
 
float resistShieldValue = 0
 
Dictionary< string, MuscleStatestateRecord = new Dictionary<string, MuscleState>()
 
MuscleStateProfile stateProfile
 
float dizzyRecoverTime = 5
 
bool clearStabWhenAction = false
 
System.Func< float, float > StiffOverrideFunc
 
HitProtector hitProtector = new HitProtector()
 
bool notReceiveNonConfigHit = false
 
float absDmgWhenNotDizzy = 0
 
bool systemProtection = false
 
float neckBreakingAngleCorrection = 0
 
bool neckBreakingZAxisCheck = true
 
bool neckBreakingYAxisCheck = false
 

Static Public Attributes

const float VelPassMini = 0.1f
 
const float VelPassAway = 0.25f
 
const float VelFactorMin = 0.1f
 
const float VelFactorMax = 10f
 
const float MinVel = 1f
 
const float VelFactorVeryEasy = VelFactorEasy / 2f
 
const float VelFactorEasy = 0.34f
 
const float VelFactorNormal = 0.4f
 
const float VelFactorFast = 0.45f
 
const float VelFactorVeryFast = 1f
 
const float AccFactorFast = 100
 
const float AccFactorFastSqrt = AccFactorFast * AccFactorFast
 
const float AccFactorFastest = 800
 
const float AccFactorFastestSqrt = AccFactorFastest * AccFactorFastest
 
const float AffectConDis = 0.16f
 
const float StaticConDis = 0.04f
 
const float SWING_SPEED_FAST = 6f
 
const float SWING_SPEED_FAST_SQRT = SWING_SPEED_FAST * SWING_SPEED_FAST
 
static Dictionary< InteractBase.HeavyLevel, float > HeavyLevel2HitAnimPob
 
static string deadEffect = "DeadEffect"
 
static string[] deadEffectSounds
 
static bool TryStayStab = false
 
static bool TryStaySlice = false
 
static List< DamageModifier > Phase1Modifier = new List<DamageModifier>()
 
static List< DamageModifier > Phase2Modifier = new List<DamageModifier>()
 
static List< DamageModifier > Phase3Modifier = new List<DamageModifier>()
 
static DamageBasicData dmgBasicData = new DamageBasicData()
 
static DamageHitData dmgHitData = new DamageHitData() { basicData = dmgBasicData }
 
static DamageEffectData dmgEffectData = new DamageEffectData() { basicData = dmgBasicData }
 

Properties

static bool StayDmg [get, set]
 

Events

System.Action< FullCharacterControl, bool > FreezeEvent
 
System.Action CutEvent
 
System.Action< RagdollMuscle > GrabMuscleEvent
 
System.Action< FullCharacterControlBeHittedEvent
 
System.Action< FullCharacterControlBeBlockedEvent
 
System.Action< FullCharacterControlDefenceEvent
 
System.Action< FullCharacterControlBeTouchedEvent
 
System.Action< FullCharacterControl, bool > HitReactAnimEvent
 
System.Action< FullCharacterControl, bool > DizzyEvent
 

Member Data Documentation

◆ deadEffectSounds

string [] CrossLink.FullBodyMuscleState.deadEffectSounds
static
Initial value:
= new string[] {
"Magic/Explode01",
"Magic/Explode02",
"Magic/Explode03",
"Magic/Explode04",
}

◆ HeavyLevel2HitAnimPob

Dictionary<InteractBase.HeavyLevel, float> CrossLink.FullBodyMuscleState.HeavyLevel2HitAnimPob
static
Initial value:
= new Dictionary<InteractBase.HeavyLevel, float>() {
{ InteractBase.HeavyLevel.VeryLight, 0.01f},
{ InteractBase.HeavyLevel.Light, 0.05f},
{ InteractBase.HeavyLevel.Normal, 0.1f},
{ InteractBase.HeavyLevel.Heavy, 0.2f},
{ InteractBase.HeavyLevel.VeryHeavy, 0.3f},
}