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


Java Terrain.INACTIVE_TRAP属性代码示例

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


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

示例1: paintBurned

private static void paintBurned( Level level, Room room ) {
	for (int i=room.top + 1; i < room.bottom; i++) {
		for (int j=room.left + 1; j < room.right; j++) {
			int t = Terrain.EMBERS;
			switch (Random.Int( 5 )) {
			case 0:
				t = Terrain.EMPTY;
				break;
			case 1:
				t = Terrain.FIRE_TRAP;
				break;
			case 2:
				t = Terrain.SECRET_FIRE_TRAP;
				break;
			case 3:
				t = Terrain.INACTIVE_TRAP;
				break;
			}
			level.map[i * Level.WIDTH + j] = t;
		}
	}
}
 
开发者ID:kurtyu,项目名称:PixelDungeonTC,代码行数:22,代码来源:StandardPainter.java

示例2: paintBurned

private static void paintBurned( Level level, Room room ) {
	for (int i=room.top + 1; i < room.bottom; i++) {
		for (int j=room.left + 1; j < room.right; j++) {
			int t = Terrain.EMBERS;
			switch (Random.Int( 5 )) {
			case 0:
				t = Terrain.EMPTY;
				break;
			case 1:
				t = Terrain.FIRE_TRAP;
				break;
			case 2:
				t = Terrain.SECRET_FIRE_TRAP;
				break;
			case 3:
				t = Terrain.INACTIVE_TRAP;
				break;
			}
			level.map[i * level.getWidth() + j] = t;
		}
	}
}
 
开发者ID:NYRDS,项目名称:pixel-dungeon-remix,代码行数:22,代码来源:StandardPainter.java

示例3: jump

private void jump() {
	timeToJump = JUMP_DELAY;
	
	for (int i=0; i < 4; i++) {
		int trapPos;
		do {
			trapPos = Random.Int( Level.LENGTH );
		} while (!Level.fieldOfView[trapPos] || !Level.passable[trapPos]);
		
		if (Dungeon.level.map[trapPos] == Terrain.INACTIVE_TRAP) {
			Level.set( trapPos, Terrain.POISON_TRAP );
			GameScene.updateMap( trapPos );
			ScrollOfMagicMapping.discover( trapPos );
		}
	}
	
	int newPos;
	do {
		newPos = Random.Int( Level.LENGTH );
	} while (
		!Level.fieldOfView[newPos] || 
		!Level.passable[newPos] || 
		(enemy != null && Level.adjacent( newPos, enemy.pos )) ||
		Actor.findChar( newPos ) != null);
	
	sprite.move( pos, newPos );
	move( newPos );
	
	if (Dungeon.visible[newPos]) {
		CellEmitter.get( newPos ).burst( Speck.factory( Speck.WOOL ), 6 );
		Sample.INSTANCE.play( Assets.SND_PUFF );
	}
	
	spend( 1 / speed() );
}
 
开发者ID:kurtyu,项目名称:PixelDungeonTC,代码行数:35,代码来源:Tengu.java

示例4: move

@Override
public void move( int step ) {
	super.move( step );

	if (Dungeon.level.map[step] == Terrain.INACTIVE_TRAP && hp() < ht()) {
		
		hp(hp() + Random.Int( 1, ht() - hp() ));
		getSprite().emitter().burst( ElmoParticle.FACTORY, 5 );
		
		if (Dungeon.visible[step] && Dungeon.hero.isAlive()) {
			GLog.n(Game.getVar(R.string.DM300_Info1));
		}
	}
	
	int cell = step + Level.NEIGHBOURS8[Random.Int( Level.NEIGHBOURS8.length )];
	
	if (Dungeon.visible[cell]) {
		CellEmitter.get( cell ).start( Speck.factory( Speck.ROCK ), 0.07f, 10 );
		Camera.main.shake( 3, 0.7f );
		Sample.INSTANCE.play( Assets.SND_ROCKS );

		if (Dungeon.level.water[cell]) {
			GameScene.ripple( cell );
		} else if (Dungeon.level.map[cell] == Terrain.EMPTY) {
			Dungeon.level.set( cell, Terrain.EMPTY_DECO );
			GameScene.updateMap( cell );
		}
	}

	Char ch = Actor.findChar( cell );
	if (ch != null && ch != this) {
		Buff.prolong( ch, Paralysis.class, 2 );
	}
}
 
开发者ID:NYRDS,项目名称:pixel-dungeon-remix,代码行数:34,代码来源:DM300.java

示例5: move

@Override
public void move( int step ) {
	super.move( step );
	
	if (Dungeon.level.map[step] == Terrain.INACTIVE_TRAP && HP < HT) {
		
		HP += Random.Int( 1, HT - HP );
		sprite.emitter().burst( ElmoParticle.FACTORY, 5 );
		
		if (Dungeon.visible[step] && Dungeon.hero.isAlive()) {
			GLog.n( name + " repairs itself!" );
		}
	}

	int[] cells = {
		step-1, step+1, step-Level.WIDTH, step+Level.WIDTH, 
		step-1-Level.WIDTH, 
		step-1+Level.WIDTH, 
		step+1-Level.WIDTH, 
		step+1+Level.WIDTH
	};
	int cell = cells[Random.Int( cells.length )];
	
	if (Dungeon.visible[cell]) {
		CellEmitter.get( cell ).start( Speck.factory( Speck.ROCK ), 0.07f, 10 );
		Camera.main.shake( 3, 0.7f );
		Sample.INSTANCE.play( Assets.SND_ROCKS );
		
		if (Level.water[cell]) {
			GameScene.ripple( cell );
		} else if (Dungeon.level.map[cell] == Terrain.EMPTY) {
			Level.set( cell, Terrain.EMPTY_DECO );
			GameScene.updateMap( cell );
		}
	}

	Char ch = Actor.findChar( cell );
	if (ch != null && ch != this) {
		Buff.prolong( ch, Paralysis.class, 2 );
	}
}
 
开发者ID:kurtyu,项目名称:PixelDungeonTC,代码行数:41,代码来源:DM300.java

示例6: move

@Override
public void move( int step ) {
	super.move( step );
	
	if (Dungeon.level.map[step] == Terrain.INACTIVE_TRAP && HP < HT) {
		
		HP += Random.Int( 1, HT - HP );
		sprite.emitter().burst( ElmoParticle.FACTORY, 5 );
		
		if (Dungeon.visible[step] && Dungeon.hero.isAlive()) {
			GLog.n( "DM-300 repairs itself!" );
		}
	}

	int[] cells = {
		step-1, step+1, step-Level.WIDTH, step+Level.WIDTH, 
		step-1-Level.WIDTH, 
		step-1+Level.WIDTH, 
		step+1-Level.WIDTH, 
		step+1+Level.WIDTH
	};
	int cell = cells[Random.Int( cells.length )];
	
	if (Dungeon.visible[cell]) {
		CellEmitter.get( cell ).start( Speck.factory( Speck.ROCK ), 0.07f, 10 );
		Camera.main.shake( 3, 0.7f );
		Sample.INSTANCE.play( Assets.SND_ROCKS );
		
		if (Level.water[cell]) {
			GameScene.ripple( cell );
		} else if (Dungeon.level.map[cell] == Terrain.EMPTY) {
			Level.set( cell, Terrain.EMPTY_DECO );
			GameScene.updateMap( cell );
		}
	}

	Char ch = Actor.findChar( cell );
	if (ch != null && ch != this) {
		Buff.prolong( ch, Paralysis.class, 2 );
	}
}
 
开发者ID:HalcyonFish,项目名称:OHSCompSciClubPixelDungeon,代码行数:41,代码来源:DM300.java


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