アットウィキロゴ
bbc_mc @ moddingメモ
掲示板 掲示板 ページ検索 ページ検索 メニュー メニュー

bbc_mc @ moddingメモ

mutexの動作

最終更新:

bbc_mc

- view
管理者のみ編集可

mutexの動作


目次


mutex

EntityAIBase クラスの mutex の動作について記載する。

編集

mutexとは

同時実行できないタスクを示すために、bit フラグを利用する。 二つのタスクの mutex_bit を AND 処理し、同じフラグが一つでも立っていた場合はそれらのタスクは同時に実行できないと判断する。

例) taskA (0001(10進数表記で 1)), taskB(0010(10進数表記で 2)) は、同時に実行可能
    
    taskA  0001
    taskB  0010
    -----  ----
           0000 => 同時実行可能
例) taskA (0001(10進数表記で 1)), taskC(0011(10進数表記で 3)) は、同時に実行不可能
    
    taskA  0001
    taskC  0011
    -----  ----
           0001 => 同時実行不可能

編集

各AIのmutex値

1.6.2 forge804

Filename mutex 1 2 4 8
EntityAIAvoidEntity.java 1 1 0 0 0
EntityAICreeperSwell.java 1 1 0 0 0
EntityAIDefendVillage.java 1 1 0 0 0
EntityAIFleeSun.java 1 1 0 0 0
EntityAIHurtByTarget.java 1 1 0 0 0
EntityAIMoveIndoors.java 1 1 0 0 0
EntityAIMoveThroughVillage.java 1 1 0 0 0
EntityAIMoveTowardsRestriction.java 1 1 0 0 0
EntityAIMoveTowardsTarget.java 1 1 0 0 0
EntityAINearestAttackableTarget.java 1 1 0 0 0
EntityAIOwnerHurtByTarget.java 1 1 0 0 0
EntityAIOwnerHurtTarget.java 1 1 0 0 0
EntityAIPanic.java 1 1 0 0 0
EntityAIPlay.java 1 1 0 0 0
EntityAIRunAroundLikeCrazy.java 1 1 0 0 0
EntityAIWander.java 1 1 0 0 0
EntityAIArrowAttack.java 3 1 1 0 0
EntityAIAttackOnCollide.java 3 1 1 0 0
EntityAIFollowGolem.java 3 1 1 0 0
EntityAIFollowOwner.java 3 1 1 0 0
EntityAILookAtVillager.java 3 1 1 0 0
EntityAILookIdle.java 3 1 1 0 0
EntityAIMate.java 3 1 1 0 0
EntityAIOcelotAttack.java 3 1 1 0 0
EntityAITempt.java 3 1 1 0 0
EntityAIVillagerMate.java 3 1 1 0 0
EntityAIWatchClosest2.java 3 1 1 0 0
EntityAILeapAtTarget.java 5 1 0 1 0
EntityAIOcelotSit.java 5 1 0 1 0
EntityAISit.java 5 1 0 1 0
EntityAITradePlayer.java 5 1 0 1 0
EntityAIControlledByPlayer.java 7 1 1 1 0
EntityAIEatGrass.java 7 1 1 1 0
EntityAIBeg.java 2 0 1 0 0
EntityAIWatchClosest.java 2 0 1 0 0
EntityAISwimming.java 4 0 0 1 0
EntityAIAvoidEntitySelector.java その他 0 0 0 0
EntityAIBase.java その他 0 0 0 0
EntityAIBreakDoor.java その他 0 0 0 0
EntityAIDoorInteract.java その他 0 0 0 0
EntityAIFollowParent.java その他 0 0 0 0
EntityAILookAtTradePlayer.java その他 0 0 0 0
EntityAINearestAttackableTargetSelector.java その他 0 0 0 0
EntityAINearestAttackableTargetSorter.java その他 0 0 0 0
EntityAIOpenDoor.java その他 0 0 0 0
EntityAIRestrictOpenDoor.java その他 0 0 0 0
EntityAIRestrictSun.java その他 0 0 0 0
EntityAITarget.java その他 0 0 0 0
EntityAITargetNonTamed.java その他 0 0 0 0
EntityAITaskEntry.java その他 0 0 0 0
EntityAITasks.java その他 0 0 0 0

編集


記事メニュー
最近更新されたスレッド
ウィキ募集バナー