/*
*文件名: 野狼1.0客户端
*创建人: 陈泽丹/Clark
*创建时间: 20120219
*文件描述:
*/
package Src
{
import flash.display.Sprite;
import Src.UI.草船借箭UI.ArrowUI;
import flash.utils.Timer;
import flash.events.TimerEvent;
public class Client extends Sprite
{
private static var g_pCurItem:Object = null;
public static const g_pMainScene:Sprite = new Sprite();
public static const g_pSceneItems:Object = new Object();
public static const g_szCurScene:String = "ArrowUI";
private static const g_pDrawTimer:Timer = new Timer(100,0);
public function Client():void
{
// constructor code
this.graphics.clear();
this.addChild(g_pMainScene);
LoadScene();
runScene(g_szCurScene);
g_pDrawTimer.addEventListener(TimerEvent.TIMER, onDrawTime);
g_pDrawTimer.start();
}
public function onDrawTime(evt:TimerEvent)
{
if( null != g_pCurItem)
{
g_pCurItem.draw();
}
}
public function runScene(_CurScene:String)
{
if (null != g_pSceneItems[_CurScene])
{
trace("OK,访问场景 " + _CurScene + " !");
ClearScene();
g_pCurItem = g_pSceneItems[_CurScene]();
}
else
{
trace("Error,访问空场景 " + _CurScene + " !");
}
}
public function ClearScene()
{
//释放资源
g_pCurItem = null;
//清空屏幕
for (var i:int=g_pMainScene.numChildren-1; i>=0; i--)
{
g_pMainScene.removeChildAt(0);
}
g_pMainScene.graphics.clear();
}
public function LoadScene()
{
g_pSceneItems["ArrowUI"] = ArrowUI.CreateObj;
//g_pSceneItems["CreateSpace"] = Space.CreateObj;
}
}
}
package Src.Tool
{
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.display.Bitmap;
public class Image
{
private var m_pLoader:Loader = new Loader();
public var m_pImg:Bitmap = null;
public function Image(_szPath)
{
// constructor code
const url = new URLRequest(_szPath);
m_pLoader.load(url);
m_pLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadComplete);
}
public function onLoadComplete(evt:Event)
{
m_pImg = Bitmap(m_pLoader.content);
m_pLoader = null;
}
}
}
package Src.UI.草船借箭UI
{
import Src.Client;
import Src.Tool.Image;
public class ArrowUI
{
private var m_pBk:Image = null;
public function ArrowUI()
{
// constructor code
m_pBk = new Image("Src//Res//ArrowUI.png");
}
public function draw()
{
if( null != m_pBk.m_pImg)
{
m_pBk.m_pImg.x = 0;
m_pBk.m_pImg.y = 0;
Client.g_pMainScene.addChild(m_pBk.m_pImg);
}
}
public static function CreateObj()
{
return new ArrowUI();
}
}
}
/*
*文件名: 小船类
*创建人: 陈泽丹/Clark
*创建时间: 20120219
*文件描述: 用于草船借箭的NPC
*/
package Src.NPC
{
public class Boat
{
public function Boat()
{
// constructor code
}
}
}
/*
*文件名: 外观类
*创建人: 陈泽丹/Clark
*创建时间: 20120219
*文件描述: 表现各种NPC外观
*/
package Src.State
{
import flash.display.Sprite;
import Src.Client;
public class View extends Sprite
{
public function View()
{
// constructor code
}
}
}
/*
*文件名: 空间类
*创建人: 陈泽丹/Clark
*创建时间: 20120219
*文件描述: 计算各种位移,视口变换等
*/
package Src.State
{
public class Space
{
public function Space()
{
// constructor code
}
}
}