亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? orderedgraphicset.java

?? 用java開發(fā)的一個(gè)實(shí)施策略游戲源碼 值得學(xué)習(xí)一下
?? JAVA
字號(hào):
/*
	Netwar
	Copyright (C) 2002  Daniel Grund, Kyle Kakligian, Jason Komutrattananon, & Brian Hibler.

	This file is part of Netwar.

	Netwar is free software; you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation; either version 2 of the License, or
	(at your option) any later version.

	Netwar is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with Netwar; if not, write to the Free Software
	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

package netwar.utils.vectorgraphics;
import netwar.game.GameViewer;
import netwar.utils.*;

/** Nonprimitive GraphicThing
 * Collection of graphic things, drawn together in a fixed order.
 * Use example: A triangle with writing on it in lines. 
 * Always draw the triangle first, and the lines immediately afterward.
 */
public class OrderedGraphicSet  extends GraphicThing {
	private GraphicThing gts[];
	private int count;
	private int primary;
	/** Create this OrderedGraphicSet with one GraphicThing. Tell it how many to expect. 
	 * @param gt The first GraphicThing in the set. By default, it is the 'primary'.
	 * @param expect The number of GraphicThings to expect.
	 */
	public OrderedGraphicSet(GraphicThing gt, int expect) {
		gts = new GraphicThing[expect];
		gts[0] = gt;
		count = 1;
		primary = 0;
	}
	
	/** Add a GraphicThing. 
	 * If more GraphicThings are added then expected, the array will expand to fit (slow).
	 * @param gt The new GraphicThing to add.
	 * @param pri If true, this GraphicThing will be the 'primary'
	 */
	public void add(GraphicThing gt, boolean pri) {
		if(pri)
			primary = count;
		if(count == gts.length) {
			//If an unexpected extra graphic thing comes in, don't die, but cope with it.
			GraphicThing temp[] = new GraphicThing[count + 1];
			for(int i=0; i<count; i++)
				temp[i] = gts[i];
			gts = temp;
		}
		gts[count++] = gt;
	}
	
	/** Get the Z coordinate, according to Transform t  
	 * @param t The Transform defining the Z coordinate.
	 * @return the Z value of the 'primary' GraphicThing.
	 */
	public float getZ(Transform t) {
		return gts[primary].getZ(t);
	}
	
	/** Draw all the things, in the order they were added.  
	 * @param v The object which will provide drawing services.	 
	 */
	public void draw(GameViewer v) {
		if(!isOnScreen(v.getTransform()))
			return;
		for(int i = 0; i < count; i++)
			gts[i].draw(v);
	}
	public GraphicThing translate(Point3D offset) {
		for(int i = 0; i < count; i++)
			gts[i].translate(offset);
		update();
		return this;
	}
	public GraphicThing rotate(Point3D axisPt, Point3D axisDir, int angle) {
		for(int i = 0; i < count; i++)
			gts[i].rotate(axisPt, axisDir, angle);
		update();
		return this;
	}
	
	/** Check for visibility of the 'primary' GraphicThing.
	 * @param t The transform defining the screen space in question.
	 * @return True iff the 'primary' GraphicThing is visible on that transform.
	 */
	public boolean isOnScreen(Transform t) {
		return gts[primary].isOnScreen(t);
	}
	
	/** Call to cause the GraphicThing to explode.
	 * The thing will replace itself with one or more DebrisFragment objects.
	 * This will call kill implicitly. Do not use this and continue using 
	 * the GraphicThing.
	 * NOTE: OrderedGraphicSet explodes as a single solid object.
	 * So for our triangle with writing example, the triangle flips off with
	 * the writing still on it (visible on both sides).
	 */
	public void explode(Point3D epicenter) {
		kill();
		unlink();
		Point3D center = gts[primary].getCenter();
		Point3D velocity = center.getDifference(epicenter);
		netwar.game.Projectile.newProjectile(new netwar.game.projectile.DebrisFragment(this), center, velocity, 0, 0, 100, null, null);
	}
	Point3D getCenter() {
		return gts[primary].getCenter();
	}
	void unlink() {
		for(int i = 0; i < count; i++)
			gts[i].unlink();
	}
	public GraphicThing copy() {
		OrderedGraphicSet ogs = new OrderedGraphicSet(gts[0].copy(), gts.length);
		for(int i = 1; i < gts.length; i++)
			if(gts[i] != null)
				ogs.add(gts[i].copy(), primary == i);
		return ogs;
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久er精品视频| 中文字幕一区二区三区av | 久久综合九色欧美综合狠狠| 人妖欧美一区二区| 欧美成人激情免费网| 国内精品久久久久影院薰衣草 | 国产精品123| 久久精品一区四区| 波多野结衣在线一区| 亚洲美女淫视频| 欧美日韩免费一区二区三区| 成人av动漫在线| 亚洲天天做日日做天天谢日日欢 | 一个色综合av| 51午夜精品国产| 国产精品一区二区久久不卡| 中文字幕亚洲精品在线观看 | 51久久夜色精品国产麻豆| 看电视剧不卡顿的网站| 亚洲国产精品成人综合| 色视频成人在线观看免| 另类小说色综合网站| 欧美国产日韩亚洲一区| 欧美日韩在线一区二区| 韩国女主播一区| 亚洲精品一二三| 日韩一区二区三区观看| www.久久精品| 蜜桃免费网站一区二区三区| 国产精品蜜臀在线观看| 91精品国产色综合久久不卡电影| 国产精品一区在线观看你懂的| 一区二区三区四区不卡视频| 欧美精品一区二区三区在线播放 | 亚洲一级二级三级在线免费观看| 日韩视频在线永久播放| 一本到不卡精品视频在线观看| 美女诱惑一区二区| 亚洲乱码国产乱码精品精小说 | 久久精子c满五个校花| 欧洲一区二区三区在线| 国产丶欧美丶日本不卡视频| 亚洲国产综合色| 国产精品少妇自拍| 日韩午夜在线播放| 欧美最新大片在线看 | 国产精品久久久久久久久晋中| 宅男在线国产精品| 色女孩综合影院| 成人美女在线视频| 精品一区二区三区免费| 日韩专区一卡二卡| 亚洲伊人伊色伊影伊综合网| 中文字幕不卡的av| 精品免费视频一区二区| 91精品国产色综合久久不卡电影| 欧美亚洲禁片免费| 91免费版在线| jvid福利写真一区二区三区| 国产成人自拍在线| 国产综合一区二区| 韩国一区二区三区| 久久精品国产精品亚洲综合| 日韩精品1区2区3区| 亚洲与欧洲av电影| 夜夜嗨av一区二区三区| 亚洲男人天堂av网| 中文字幕一区二区三区在线观看| 中文字幕精品一区| 国产蜜臀97一区二区三区| 久久久久久久精| 国产亚洲自拍一区| 日本一区二区三区免费乱视频| 亚洲精品一区二区三区精华液 | 亚洲免费资源在线播放| 国产精品每日更新| 成人免费小视频| 亚洲免费av高清| 一区2区3区在线看| 亚洲成av人片一区二区| 婷婷开心激情综合| 蜜桃在线一区二区三区| 蜜臀av国产精品久久久久| 久久精品av麻豆的观看方式| 久久99精品一区二区三区| 精品中文字幕一区二区| 国产精品一区二区在线观看不卡 | 久久不见久久见免费视频7| 久久精品国产**网站演员| 精品一区二区三区不卡 | 成人免费高清视频在线观看| 成人av在线一区二区三区| 日韩欧美不卡在线观看视频| 日韩欧美国产三级| 欧美成人性福生活免费看| 久久免费美女视频| 国产精品乱人伦| 亚洲一区在线播放| 免费在线观看视频一区| 国产麻豆91精品| 99在线精品视频| 欧美日韩一区不卡| 久久亚洲一区二区三区四区| 国产精品久久久久久久久久久免费看| 一区二区三区四区五区视频在线观看| 亚洲成a人片综合在线| 久久国产精品露脸对白| 成人午夜看片网址| 欧美色窝79yyyycom| 欧美精品一区二区三区蜜桃 | 久久影院视频免费| 中文字幕日韩欧美一区二区三区| 亚洲国产精品自拍| 国产精品一区二区在线观看不卡| 色欧美片视频在线观看| 欧美电影免费观看高清完整版在线| 中文av一区二区| 午夜欧美电影在线观看| 国产69精品一区二区亚洲孕妇 | 在线播放日韩导航| 国产欧美日产一区| 日日摸夜夜添夜夜添精品视频 | 91美女福利视频| 日韩精品一区二区三区视频播放 | 精品在线免费观看| 在线观看亚洲成人| 久久久久久久免费视频了| 夜夜嗨av一区二区三区中文字幕 | 99久久国产免费看| 日韩一级高清毛片| 日韩伦理免费电影| 国产综合色视频| 欧美伦理电影网| 亚洲天堂网中文字| 狠狠网亚洲精品| 6080午夜不卡| 亚洲色大成网站www久久九九| 精品亚洲欧美一区| 91精品欧美久久久久久动漫| 亚洲欧美偷拍卡通变态| 国产精品一区二区你懂的| 欧美一区二区视频在线观看2020| 亚洲人妖av一区二区| 国产成人综合网站| 精品对白一区国产伦| 盗摄精品av一区二区三区| 制服丝袜中文字幕亚洲| 一区二区三区四区高清精品免费观看| 国产91精品免费| 久久午夜老司机| 久久精品国产精品青草| 欧美一级夜夜爽| 性做久久久久久| 欧美亚洲综合色| 夜色激情一区二区| 91成人网在线| 亚洲一区二区三区小说| 一本色道久久综合精品竹菊| 国产精品夫妻自拍| 不卡欧美aaaaa| 中文字幕亚洲欧美在线不卡| 成人激情免费网站| 国产精品久久久久aaaa樱花| 丁香桃色午夜亚洲一区二区三区| 久久综合色天天久久综合图片| 美女视频黄 久久| 欧美成人a在线| 精品一区二区三区久久| 26uuuu精品一区二区| 国产精品中文有码| 国产无一区二区| 成人黄色电影在线| 亚洲欧美在线观看| 在线免费观看不卡av| 亚洲一区二区成人在线观看| 欧美日韩国产成人在线免费| 午夜国产精品一区| 91精品国产色综合久久不卡电影| 久久精品国产亚洲5555| 久久久精品黄色| 成人综合日日夜夜| 亚洲三级电影全部在线观看高清| 在线影视一区二区三区| 五月天欧美精品| 精品剧情在线观看| 国产成人亚洲精品狼色在线| 日韩伦理免费电影| 亚洲图片激情小说| 麻豆一区二区三| 久久丝袜美腿综合| 99久免费精品视频在线观看| 亚洲精品综合在线| 欧美丰满少妇xxxbbb| 九一九一国产精品| 国产精品三级久久久久三级| 在线免费观看日韩欧美| 秋霞午夜av一区二区三区| 久久综合久久久久88| 94色蜜桃网一区二区三区| 日韩av电影天堂|