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


Java Swap类代码示例

本文整理汇总了Java中com.watabou.pixeldungeon.effects.Swap的典型用法代码示例。如果您正苦于以下问题:Java Swap类的具体用法?Java Swap怎么用?Java Swap使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: onZap

import com.watabou.pixeldungeon.effects.Swap; //导入依赖的package包/类
@Override
protected void onZap( int cell ) {
	
	int reach = Math.min( Ballistica.distance, power() + 4 );
	
	boolean mapUpdated = false;
	for (int i=1; i < reach; i++) {
		
		int c = Ballistica.trace[i];
		
		int before = Dungeon.level.map[c];
		
		Char ch = Actor.findChar( c );
		if (ch != null) {
			Actor.addDelayed( new Swap( curUser, ch ), -1 );
			break;
		}
		
		Heap heap = Dungeon.level.heaps.get( c );
		if (heap != null) {
			switch (heap.type) {
			case HEAP:
				transport( heap );
				break;
			case CHEST:
			case MIMIC:
			case TOMB:
			case SKELETON:
				heap.open( curUser );
				break;
			default:
			}
			
			break;
		}
		
		Dungeon.level.press( c, null );
		if (before == Terrain.OPEN_DOOR) {	
			Level.set( c, Terrain.DOOR );
			GameScene.updateMap( c );
		} else if (Level.water[c]) {
			GameScene.ripple( c );
		}
		
		mapUpdated = mapUpdated || Dungeon.level.map[c] != before;
	}
	
	if (mapUpdated) {
		Dungeon.observe();
	}
}
 
开发者ID:kurtyu,项目名称:PixelDungeonTC,代码行数:52,代码来源:WandOfReach.java


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