public int CalcTotalHate(HateParam param) { float num = 0f; for (int i = 0; i < 7; i++) { num += (float)val[i] * param.categoryParam[i].importance; } return((int)num); }
public static HateParam GetDefault() { HateParam hateParam = new HateParam(); for (int i = 0; i < 7; i++) { hateParam.categoryParam[i] = new CategoryParam(); } for (int j = 0; j < 4; j++) { hateParam.distanceAttackRatio[j] = 1f; } hateParam.categoryParam[2].importance = 1f; hateParam.categoryParam[2].volatilizeRate = 0.9f; hateParam.categoryParam[2].atackedVolatizeRate = 0.9f; return(hateParam); }
protected override void OnInitialize() { base.OnInitialize(); if (enemy.brainParam != null) { param = enemy.brainParam; FieldMapTable.EnemyPopTableData enemyPopData = Singleton <FieldMapTable> .I.GetEnemyPopData(MonoBehaviourSingleton <FieldManager> .I.currentMapID, enemy.enemyPopIndex); if (enemyPopData != null && enemyPopData.autoActivate) { param.scoutParam = enemyPopData.scoutingParam; } } base.opponentMemSpanTimer.PauseOn(); base.targetUpdateSpanTimer.PauseOn(); if (enemy.isBoss) { base.opponentMem.SetHateParam(enemy.enemyTableData.personality); } else { base.opponentMem.SetHateParam(HateParam.GetDefault()); } base.fsm = new StateMachine(this); if (enemy.enemyTableData.active) { base.fsm.ChangeState(STATE_TYPE.ACTIVE); } else { base.fsm.ChangeState(STATE_TYPE.NONACTIVE); } if (QuestManager.IsValidInGameWaveMatch()) { SetNearWaveMatchTarget(); } actionCtrl = new EnemyActionController(this); actionCtrl.LoadTable(); }
public void SetHateParam(HateParam data) { hateParam = data; }