<?php
/**
* 警戒感情時の行動パターン
*
*/
class CautionBehaviorWeightStrategy implements BehaviorWeightStrategy
{
private const DEFENCE_WEIGHT_CORRECTION = 20;
private const ESCAPE_WEIGHT_CORRECTION = 10;
/**
* @inheritDoc
*/
public function getWeights(PersonalityStrategy $personality): array
{
return [
Behavior::ATTACK->value => $personality->getAttackWeight(),
Behavior::DEFENCE->value => $personality->getDefenceWeight() + self::DEFENCE_WEIGHT_CORRECTION,
Behavior::WAIT->value => $personality->getWaitWeight(),
Behavior::ESCAPE->value => $personality->getEscapeWeight() + self::ESCAPE_WEIGHT_CORRECTION,
];
}
}