當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript rot-js.Engine類代碼示例

本文整理匯總了TypeScript中rot-js.Engine的典型用法代碼示例。如果您正苦於以下問題:TypeScript Engine類的具體用法?TypeScript Engine怎麽用?TypeScript Engine使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了Engine類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: units

/* simulate several turns */
template = "Actor %s performing action for %s time units (current time: %s)";
for (let i = 0; i < 20; i++) {
    const current = act_scheduler.next();

    const actionDuration = Math.ceil(ROT.RNG.getUniform() * 20);
    act_scheduler.setDuration(actionDuration);

    const padded = actionDuration.toString().lpad("0");
    SHOW(template.format(current, padded, act_scheduler.getTime()));
}

// Timing & scheduling / Engine / Asynchronous game engine
scheduler = new ROT.Scheduler.Simple();
let engine = new ROT.Engine(scheduler);
let output: any = [];

class Actor1 {
    constructor(public lives: number) { }

    act() {
        output.push(".");
        this.lives--;
        if (!this.lives) {
            scheduler.remove(actor1);
            engine.lock();              /* pause execution */
            setTimeout(unlock, 500);    /* wait for 500ms */
        }
    }
}
開發者ID:AbraaoAlves,項目名稱:DefinitelyTyped,代碼行數:30,代碼來源:rot-js-tests.ts

示例2: second

const unlock = () => {               /* called asynchronously */
    const actor2 = new Actor2();

    output = [];
    scheduler.add(actor2, false);       /* add second (non-repeating) actor */
    engine.unlock();                    /* continue execution */
    SHOW(output.join(""));
};
開發者ID:AbraaoAlves,項目名稱:DefinitelyTyped,代碼行數:8,代碼來源:rot-js-tests.ts

示例3: act

 act() {
     output.push(".");
     this.lives--;
     if (!this.lives) {
         scheduler.remove(actor1);
         engine.lock();              /* pause execution */
         setTimeout(unlock, 500);    /* wait for 500ms */
     }
 }
開發者ID:AbraaoAlves,項目名稱:DefinitelyTyped,代碼行數:9,代碼來源:rot-js-tests.ts


注:本文中的rot-js.Engine類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。