当前位置: 首页>>代码示例>>Java>>正文


Java Actor.findById方法代码示例

本文整理汇总了Java中com.shatteredpixel.shatteredpixeldungeon.actors.Actor.findById方法的典型用法代码示例。如果您正苦于以下问题:Java Actor.findById方法的具体用法?Java Actor.findById怎么用?Java Actor.findById使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.shatteredpixel.shatteredpixeldungeon.actors.Actor的用法示例。


在下文中一共展示了Actor.findById方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getCloser

import com.shatteredpixel.shatteredpixeldungeon.actors.Actor; //导入方法依赖的package包/类
@Override
protected boolean getCloser(int target) {
	if (enemy != null && Actor.findById(potHolder) == enemy) {
		target = enemy.pos;
	} else if (potPos != -1 && (state == WANDERING || Dungeon.level.distance(target, potPos) > 3))
		this.target = target = potPos;
	return super.getCloser( target );
}
 
开发者ID:00-Evan,项目名称:shattered-pixel-dungeon,代码行数:9,代码来源:Bee.java

示例2: updateBee

import com.shatteredpixel.shatteredpixeldungeon.actors.Actor; //导入方法依赖的package包/类
private void updateBee( int cell, Char holder){
	//important, as ids are not unique between depths.
	if (Dungeon.depth != beeDepth)
		return;

	Bee bee = (Bee)Actor.findById( myBee );
	if (bee != null)
		bee.setPotInfo( cell, holder );
}
 
开发者ID:00-Evan,项目名称:shattered-pixel-dungeon,代码行数:10,代码来源:Honeypot.java

示例3: chooseEnemy

import com.shatteredpixel.shatteredpixeldungeon.actors.Actor; //导入方法依赖的package包/类
@Override
protected Char chooseEnemy() {
	//if the pot is no longer present, default to regular AI behaviour
	if (potHolder == -1 && potPos == -1)
		return super.chooseEnemy();

	//if something is holding the pot, target that
	else if (Actor.findById(potHolder) != null)
		return (Char)Actor.findById(potHolder);

	//if the pot is on the ground
	else {

		//try to find a new enemy in these circumstances
		if (enemy == null || !enemy.isAlive() || state == WANDERING
				|| Dungeon.level.distance(enemy.pos, potPos) > 3
				|| (alignment == Alignment.ALLY && enemy.alignment == Alignment.ALLY)){
			
			//find all mobs near the pot
			HashSet<Char> enemies = new HashSet<>();
			for (Mob mob : Dungeon.level.mobs) {
				if (!(mob instanceof Bee)
						&& Dungeon.level.distance(mob.pos, potPos) <= 3
						&& mob.alignment != Alignment.NEUTRAL
						&& !(alignment == Alignment.ALLY && mob.alignment == Alignment.ALLY)) {
					enemies.add(mob);
				}
			}
			
			if (!enemies.isEmpty()){
				return Random.element(enemies);
			} else {
				if (alignment != Alignment.ALLY && Dungeon.level.distance(Dungeon.hero.pos, potPos) <= 3){
					return Dungeon.hero;
				} else {
					return null;
				}
			}
			
		} else {
			return enemy;
		}

		
	}
}
 
开发者ID:00-Evan,项目名称:shattered-pixel-dungeon,代码行数:47,代码来源:Bee.java


注:本文中的com.shatteredpixel.shatteredpixeldungeon.actors.Actor.findById方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。