• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            公告

            聯(lián)系我:我的126郵箱: billhsu。 Locations of visitors to this page
            <2008年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            統(tǒng)計(jì)

            • 隨筆 - 41
            • 文章 - 0
            • 評(píng)論 - 82
            • 引用 - 0

            常用鏈接

            留言簿(16)

            隨筆分類

            隨筆檔案

            相冊(cè)

            Game Dev

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            腳本引擎RapScript V0.0.0.1發(fā)布
            這是最近完成的RapScript的0.0.0.1版的源代碼。
            這份代碼目前比較糟糕,有點(diǎn)亂,而且沒有錯(cuò)誤處理,但開源是一種習(xí)慣。。。

            先介紹一下怎么用:
            把RapScript.h RapScript.cpp RapStack.h加入工程,然后在自己的main.cpp里加入
            #include "RapScript.h"

            RapScript XXX;

            XXX是對(duì)象名,可以自己取。

            關(guān)于函數(shù)互交:
            比如說,你在C++中寫了一個(gè)函數(shù):
            void test(int a,int b)
            {
            cout 
            <<"In void test(int a,int b) a:"<<a<<" b: "<<b<<endl;
            }
            要調(diào)用它,要在寫一個(gè):
            void rap_test()
            {
            int a=rapscript.para[0].v_int;//參數(shù)一
            int b=rapscript.para[1].v_int;//參數(shù)二
            test(a,b);

            }
            然后在合適的位置(比如int main()中)加入
            rapscript.tmp_cmd.cmd_name="test";
            rapscript.tmp_cmd.v_type
            =rapscript.CMD_VOID;
            rapscript.tmp_cmd.fp_void
            =rap_test;
            rapscript.cmd_list.push_back(rapscript.tmp_cmd);
            調(diào)用rapscript.run_rap();
            腳本就會(huì)執(zhí)行了。
            說明一下:
            1.在腳本中寫命令時(shí)要這樣:test(a;b;);//我偷懶了
            2.所有變量用前必須聲明(如int a;string b;)
            目前只支持int 和 string
            3.Bug超多。
            4.if()和 for()等暫時(shí)不支持
            5.如果你愿意修改源代碼,只要合理,就會(huì)被采用,名字也會(huì)加入Author里。。。

            下載RapScript V0.0.0.1源代碼
            ┏━┓   ┏━━┓   ┏┓     
            ┃┃┣━┳━┫━━╋━┳┳╋╋━┳━━┓
            ┃ ┫━┃┃┣━━┃┣┫┏┫┃┃┣┓┏┛
            ┗┻┻┻┫┏┻━━┻━┻┛┗┫┏┛┗┛ 
                         ┗┛        ┗┛    


            posted on 2008-08-10 11:05 Bill Hsu 閱讀(1692) 評(píng)論(4)  編輯 收藏 引用 所屬分類: Game Dev

            評(píng)論

            # re: 腳本引擎RapScript V0.0.0.1發(fā)布 2008-08-10 13:42 陳梓瀚(vczh)

            不錯(cuò)不錯(cuò),都開始做腳本引擎了

            http://www.shnenglu.com/vczh/archive/2008/07/01/55072.html

            這個(gè)是我以前做的,支持C++和.NET,有函數(shù),lambda表達(dá)式,普通循環(huán)和foreach循環(huán),分支,類,命名空間,函數(shù)重載,操作符重載,類繼承。對(duì)數(shù)組有特殊支持。

            支持面向?qū)ο蟆⒑瘮?shù)式、泛型等多種范式。

            可以在host program,也就是調(diào)用這個(gè)腳本引擎的C++和.NET程序里面,向腳本引擎插入類、命名空間和函數(shù)。

            默認(rèn)的函數(shù)支持正則表達(dá)式(也是自己寫的)、上下文無關(guān)問法處理(也是自己寫的)、異常處理、和反射。

            上面的鏈接里面有我用這個(gè)腳本引擎自己開發(fā)的一套數(shù)據(jù)結(jié)構(gòu),大概跟STL的概念是差不多的,只是沒有iterator。里面的容器都可以與腳本內(nèi)置的foreach互相協(xié)調(diào)。

            # re: 腳本引擎RapScript V0.0.0.1發(fā)布 2008-08-10 19:23 Bill Hsu

            @陳梓瀚(vczh)
            這個(gè)vczh太強(qiáng)了

            # re: 腳本引擎RapScript V0.0.0.1發(fā)布 2009-04-24 11:05 dayu

            good.交換個(gè)友情鏈接吧
            dayuhome.blogbus.com
            久久久久综合中文字幕| 亚洲婷婷国产精品电影人久久| 色欲综合久久中文字幕网| 国产偷久久久精品专区| 国产精品久久久久久搜索| 狠狠色综合网站久久久久久久 | 性做久久久久久久久| 欧美精品久久久久久久自慰| 国产精品无码久久久久 | 日韩久久久久久中文人妻| 天天综合久久久网| 日本人妻丰满熟妇久久久久久| 精品免费久久久久国产一区| 性欧美大战久久久久久久久| 久久综合日本熟妇| 久久无码av三级| 久久国产精品99国产精| 久久久亚洲欧洲日产国码是AV| 人人狠狠综合久久亚洲88| 亚洲国产精品18久久久久久| 久久精品国产亚洲7777| 久久久久夜夜夜精品国产| 久久夜色精品国产噜噜亚洲AV| 欧美无乱码久久久免费午夜一区二区三区中文字幕 | 久久99久久99小草精品免视看| 一级女性全黄久久生活片免费 | 久久国产精品一区| 91精品国产色综久久| 久久99国产精品一区二区| 色婷婷综合久久久久中文| 久久人人青草97香蕉| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区| 久久久久久午夜成人影院| 中文字幕久久久久人妻| 大香伊人久久精品一区二区| 怡红院日本一道日本久久 | 女同久久| 久久精品视频一| 性欧美丰满熟妇XXXX性久久久 | 久久天堂AV综合合色蜜桃网| 久久久久亚洲av无码专区喷水 |