⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gamecontroller.java

📁 一个MMORPG手机游戏的服务器端程序源代码
💻 JAVA
字号:
package zsw_mmorpg.server.controller;import zsw_mmorpg.common.*;import zsw_mmorpg.server.*;import java.util.*;/** * GameController.java * * 从wrap类继承而来,使用后台线程 * 是游戏引擎的基类 * * @author <a href="mailto:shiwei@raymobile.com">朱世伟</a> * @version 1.0 */public abstract class GameController extends Wrap {    /**  GameServer 的引用*/    protected GameServer gameServer;    /**     * GAMESERVER 会调用这个初始化游戏引擎     */    public final void init(GameServer s, GameConfig gc) {    this.gameServer = s;    // todo: get the preferred number of workers from the GameConfig    //	int nw = gc.getInt("NUM_WORKERS", 5);    // init the Wrap first    initWrap(Globals.DEFAULT_CONTROLLER_WORKERS);    // now call the subclasses' init    initController(gc);    }     /**     * 发送事件给特定玩家     */    protected void sendEvent(GameEvent e, Player p) {    e.setPlayerId(p.getPlayerId());    gameServer.writeEvent(e);    }    /**     * 发送事件给多个玩家     */    protected synchronized void sendBroadcastEvent(GameEvent e, Collection players) {    Iterator i = players.iterator();    String[] recipients = new String[players.size()];    int j=0;    while(i.hasNext()) {        Player p = (Player) i.next();//        if (!(p.getPlayerId().equals(e.getPlayerId())))        recipients[j++] = p.getPlayerId();    }    e.setRecipients(recipients);    gameServer.writeEvent(e);    }     /**     * 引擎初始化     */    protected abstract void initController(GameConfig gc);     /**     * 返回 GameName     */    public abstract String getGameName();    /**     * 创建玩家     */    public abstract Player createPlayer();    /**     * 创建游戏事件     */    public abstract GameEvent createGameEvent();}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -