V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
think9999
V2EX  ›  程序员

求一个脚本该如何实现?

  •  
  •   think9999 · 2022-08-14 18:36:17 +08:00 · 1349 次点击
    这是一个创建于 840 天前的主题,其中的信息可能已经有所发展或是发生改变。
    脚本如下:



    function 弓箭手攻击设置
    set_race(1);
    set_skill("弓箭手物理攻击");
    end

    function 棍职业攻击设置
    set_race(2);
    set_skill("棍物理攻击");
    end

    function 刀职业攻击设置
    set_race(3);
    set_skill("刀物理攻击");
    end

    function 剑职业攻击设置
    set_race(4);
    set_skill("剑物理攻击");
    end

    function main
    call 剑职业攻击设置;

    label 战斗设定
    if get_level() > 5
    register(1, "main", "回城过程");
    jmp 5 级战斗过程
    end;

    // 默认过程
    jmp 5 级战斗过程
    //return;

    label 5 级内战斗过程
    goto("烟波山");
    loop 杀怪
    // 杀兔子
    fight(124, 164, 30, 1);
    end;

    label 5 级战斗过程
    goto("山洞");
    loop 杀怪
    // 杀一般的怪
    fight(86, 123, 30, 1);

    fight(138, 119, 30, 1);

    fight(138, 119, 1000, 1);

    // 杀张大手
    //fight(83, 47, 30, 1);
    end;

    label 回城过程
    msg("....这里是 回城...");

    goto("草药铺", "老郎中")

    chat_npc("老郎中")

    if get_error() > 0
    jmp 过程异常
    end

    // 获得我的物品列表
    get_my_items();

    // 卖普通物品
    sell_items(1);

    // 买东西 止血草 10 个
    buy("止血草", 10, 1);

    // 买够 金创药 10 个, 注意: 根据后面标准位判断
    buy("金创药", 10, 1);

    get_my_items();

    msg("回程过程结束...");
    jmp 战斗设定

    msg(" <<<<<< main2 end >>>>>>> ");

    return;

    label 过程异常
    msg("过程异常,查日志");
    end;
    2 条回复    2022-08-15 09:30:08 +08:00
    think9999
        1
    think9999  
    OP
       2022-08-14 18:42:38 +08:00
    像是 lua 又不是,有 jmp 可以任意跳 , 还可以不担心堆栈溢出。。。
    linyinma
        2
    linyinma  
       2022-08-15 09:30:08 +08:00
    采用 JS 啊,简单的基于事件驱动模型,UI 开发最基本的模型
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1029 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 23:05 · PVG 07:05 · LAX 15:05 · JFK 18:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.