青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
On The Road
(cond ((less 'code) (less 'bug)))
C++博客
首頁
新隨筆
聯(lián)系
聚合
管理
隨筆 - 119 文章 - 290 trackbacks - 0
博客搬家了哦,請移步
叫我abc
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
《GAME PROGRAMMING GEMS6》讀書筆記(4)
《UNIX編程藝術(shù)》讀書筆記(4)
month-flow(5)
mysql入門(3)
垃圾收集(4)
我的博客
叫我abc
博客搬家啦
搜索
積分與排名
積分 - 305531
排名 - 84
最新評論
1.?re: C++ std::fstream open mode
i'am got
--hdj
2.?re: cppcheck的使用
你好,你會使用cppcheck嗎?@robert
--wqq
3.?re: 垃圾收集的那點事(H)
非常感謝
--7Qing_
4.?re: 高效調(diào)用lua函數(shù)
為什么提示沒有findLuaItem這個函數(shù)?
--sdfasf
5.?re: android ndk調(diào)試知識[未登錄]
博主你好,請問如果沒有.so的源代碼,應(yīng)該如何進行arm的匯編級調(diào)試呢?
--dennis
閱讀排行榜
1.?cppcheck的使用(17053)
2.?十步精通新語言(10689)
3.?內(nèi)存池實現(xiàn)(9903)
4.?高效調(diào)用lua函數(shù)(9263)
5.?在lua腳本中使用unicode(8237)
RPG程序框架探討
此前曾思考過腳本如何同程序結(jié)合,雖然有所悟,但卻發(fā)現(xiàn)連慣的執(zhí)行某個腳本的時候,某些指令要掛起游戲的行動邏輯,比如TALK,在anykey按下前,整個場景都不能控制,而必須關(guān)注在人物對話上。
這里所說的行動邏輯,是指類似于ACT游戲的主邏輯/主循環(huán),沒有對話,沒有菜單,也沒有腳本。
先聲明一個常用的術(shù)語,windows_game_loop(簡稱wgl),也就是windows下常用的游戲主循環(huán)代碼:
while
(run_game)?
{
??
while
(PeekMessage)?
{
????
??}
??
if
?(actived)?
{
????impl_game_loop();
??}
??
else
??WaitMessage();
}
好了,看看圣劍2所透露的RPG基本模塊:
1,行動邏輯,也就是主循環(huán)game_loop,是一個wgl;
2,主菜單,CMenu類,包含狀態(tài),物品,魔法子系統(tǒng)。它的run()是一個wgl,因此菜單啟動后,能夠掛起行動邏輯;
3,腳本系統(tǒng),會連慣的執(zhí)行一個腳本文件;
4,消息隊列,并不是winproc,消息隊列每次每幀只執(zhí)行一條消息,每幀并不能保證能完成執(zhí)行,所以下一幀還會執(zhí)行相同的動作,直到完成并刪除該消息。重要的是,只要消息隊列非空,就不會執(zhí)行行動邏輯,暫時掛起它;
5,戰(zhàn)斗系統(tǒng),包含fight_menu,fight_good,fight_magic之類的東西,類似于一個mini_game。它的start()函數(shù),是一個wgl;
6,對話系統(tǒng),將由腳本系統(tǒng)和消息隊列協(xié)作完成,對話時要掛起行動邏輯;
看行動邏輯,主菜單和戰(zhàn)斗系統(tǒng),它們都是wgl,因此可以單獨封裝成game_moudel,并注冊到game_system下,由它驅(qū)動執(zhí)行。
行動邏輯是非戰(zhàn)斗時的邏輯,主要內(nèi)容是控制player的運動,還有當player面向某個NPC并按下“對話鍵”后,觸發(fā)該NPC執(zhí)行其腳本。行動邏輯只能在空消息隊列時才執(zhí)行,這很重要。
對話系統(tǒng)。連續(xù)的對話,來源于NPC的腳本。NPC的腳本一口氣的執(zhí)行,但是對話必須一步步等待交互的來,如何做到?圣劍的解決方案是把對話指令轉(zhuǎn)成消息,并放到消息隊列中。
消息隊列在wgl中掛起行動邏輯,使得player關(guān)注到對話上。消息隊列執(zhí)行一個NPC_TALK/PLAYER_TALK命令,顯示對話文字,每幀不斷的重復(fù),直到player按下anykey,消息隊列刪除該消息,執(zhí)行下一條消息,也許是NPC_TALK/PLAYER_TALK,這樣對話就得到了延續(xù)。
看這樣一個對話腳本,其中每個command都變成消息加入到消息隊列,自然就能掛起行動邏輯完成對話了:
NPC_TALK?
"
Hello,?My?friend
"
PLAYER_TALK?
"
Hello,?What's?up
"
NPC_TALK?
"
Maybe?you?need?a?sword
"
PUT_ITEM?sword
TALK?
"
You?get?a?sword
"
但是,消息隊列并不能很好的解決含選擇項對話的問題,因為不期望腳本被阻塞(多數(shù)是由于圖形引擎結(jié)構(gòu)引起,不希望把刷新掛進某個函數(shù)內(nèi),雖然可以這么做),比如:
ret?
=
?NPC_CHOISE(
"
You?are?Saber?
"
?,
"
YES
"
?,
"
NO
"
)
if
?(ret?
==
?
"
YES
"
)
??NPC_TALK?
"
Hello,?Saber
"
??NPC_TALK?
"
I?think?you?need?a?sword
"
??PUT_ITEM?sword
??PLAYER_TALK?
"
Thanks
"
else
??NPC_TALK?
"
Oh,?byebye
"
end?
if
以上,就是隊列不能解決的腳本···除非NPC_CHOISE是一個wgl
posted on 2006-12-25 11:03
LOGOS
閱讀(1261)
評論(0)
編輯
收藏
引用
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 LOGOS Powered by:
博客園
模板提供:
滬江博客
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
老牛嫩草一区二区三区日本
|
欧美在线不卡视频
|
亚洲欧美日韩国产精品
|
99一区二区
|
日韩午夜av在线
|
亚洲视频网在线直播
|
亚洲综合日韩
|
久久久av毛片精品
|
欧美福利专区
|
日韩视频一区
|
亚洲专区一区
|
欧美在线免费看
|
蜜臀av在线播放一区二区三区
|
欧美一区二区女人
|
狂野欧美性猛交xxxx巴西
|
欧美高清在线一区
|
国产精品日本精品
|
狠狠v欧美v日韩v亚洲ⅴ
|
亚洲电影成人
|
亚洲一区二区三区色
|
久久国产精品99国产
|
欧美激情一区二区三区蜜桃视频
|
亚洲精品乱码久久久久久蜜桃麻豆
|
欧美成人视屏
|
亚洲精品永久免费精品
|
午夜精品美女自拍福到在线
|
老牛影视一区二区三区
|
国产精品久久久久久久久借妻
|
国产精品久久久久秋霞鲁丝
|
国产有码在线一区二区视频
|
日韩视频免费在线
|
久久久www免费人成黑人精品
|
91久久综合
|
久久九九国产
|
国产日韩一区在线
|
亚洲视频一区二区
|
欧美成人精品福利
|
香蕉成人啪国产精品视频综合网
|
欧美黄污视频
|
亚洲国产精品高清久久久
|
一色屋精品视频免费看
|
伊人成人开心激情综合网
|
日韩视频三区
|
蘑菇福利视频一区播放
|
亚洲精品一区二区三区婷婷月
|
亚洲无毛电影
|
欧美成年网站
|
在线观看成人网
|
欧美福利视频一区
|
亚洲精品一区二区三区四区高清
|
亚洲一区二区三区乱码aⅴ
|
麻豆av一区二区三区久久
|
亚洲婷婷综合色高清在线
|
欧美黑人国产人伦爽爽爽
|
玉米视频成人免费看
|
久久黄金**
|
亚洲一区久久
|
国产精品一二一区
|
亚洲欧美综合v
|
一区二区高清视频
|
欧美精品一卡
|
亚洲欧洲中文日韩久久av乱码
|
麻豆9191精品国产
|
蜜桃久久av一区
|
激情丁香综合
|
蜜月aⅴ免费一区二区三区
|
欧美 日韩 国产精品免费观看
|
激情文学综合丁香
|
免费人成精品欧美精品
|
久久精品亚洲精品国产欧美kt∨
|
狠狠色综合色综合网络
|
欧美成人在线免费观看
|
欧美国产欧美亚州国产日韩mv天天看完整
|
亚洲精品国产精品乱码不99按摩
|
aa日韩免费精品视频一
|
国产精品福利在线观看网址
|
亚洲在线第一页
|
亚洲影院免费
|
国产真实乱偷精品视频免
|
快射av在线播放一区
|
欧美h视频在线
|
这里只有精品视频
|
午夜在线播放视频欧美
|
亚洲二区精品
|
亚洲影视综合
|
亚洲久色影视
|
亚洲欧洲日韩综合二区
|
欧美另类在线播放
|
小黄鸭精品密入口导航
|
久久电影一区
|
亚洲黄色成人网
|
一区二区三区日韩精品视频
|
国产一区二区三区高清播放
|
欧美顶级少妇做爰
|
欧美午夜一区二区
|
另类专区欧美制服同性
|
欧美日韩国产高清
|
久久精品毛片
|
欧美久久久久久
|
久久黄色小说
|
欧美区亚洲区
|
老巨人导航500精品
|
国产精品高清一区二区三区
|
老鸭窝亚洲一区二区三区
|
欧美日产一区二区三区在线观看
|
欧美一区观看
|
欧美日韩亚洲免费
|
美日韩在线观看
|
国产精品欧美经典
|
亚洲人成在线影院
|
在线免费观看日韩欧美
|
亚洲影视在线
|
亚洲午夜精品在线
|
久久综合伊人77777
|
香蕉成人久久
|
欧美日韩精品免费看
|
免费看av成人
|
国内一区二区在线视频观看
|
最近看过的日韩成人
|
国产午夜精品全部视频播放
|
国产精品永久入口久久久
|
最新国产乱人伦偷精品免费网站
|
韩国一区二区在线观看
|
亚洲欧美精品在线
|
亚洲一区精彩视频
|
欧美日韩另类一区
|
亚洲国产一二三
|
亚洲经典自拍
|
免费看亚洲片
|
久久亚洲午夜电影
|
国产亚洲精品bt天堂精选
|
亚洲视频在线观看三级
|
亚洲视频一区二区在线观看
|
久久爱www久久做
|
香蕉久久国产
|
国产精品视频久久一区
|
亚洲性视频网站
|
午夜亚洲一区
|
国产欧美日韩专区发布
|
午夜在线视频一区二区区别
|
欧美一区不卡
|
国产一区二区丝袜高跟鞋图片
|
销魂美女一区二区三区视频在线
|
欧美一区二区成人
|
国产精品青草久久久久福利99
|
亚洲自拍高清
|
夜夜狂射影院欧美极品
|
99精品热视频
|
午夜精品久久久久久久蜜桃app
|
久久久久久久久久久久久久一区
|
亚洲激情在线观看视频免费
|
久久久综合激的五月天
|
欧美成人综合一区
|
午夜精品久久
|
久久久www成人免费精品
|
国产日韩欧美另类
|
久久精品日产第一区二区
|
免费成人毛片
|
日韩系列在线
|
国产精品v欧美精品v日韩
|
亚洲女女做受ⅹxx高潮
|
久久久久久久网
|
亚洲电影在线免费观看
|
欧美日韩视频在线一区二区
|
亚洲男人影院
|
亚洲福利在线观看
|
亚洲性色视频
|
国语自产精品视频在线看抢先版结局
|
午夜国产欧美理论在线播放
|
欧美a级在线
|
亚洲无人区一区
|
国产午夜精品美女毛片视频
|
免费亚洲电影
|
亚洲免费影视
|
亚洲国产精品va在线观看黑人
|
亚洲午夜免费福利视频
|
激情亚洲成人
|
国产精品一区二区视频
|
欧美成人在线免费观看
|
亚洲自拍偷拍福利
|
91久久黄色
|
老色鬼精品视频在线观看播放
|
夜夜爽av福利精品导航
|
激情久久久久久
|
国产精品久久久亚洲一区
|
毛片一区二区三区
|
午夜精品一区二区三区电影天堂
|
欧美激情1区2区
|
久久免费国产
|
欧美一级艳片视频免费观看
|
99视频在线精品国自产拍免费观看
|
国产精品久久久久久久电影
|
另类国产ts人妖高潮视频
|
亚洲性感美女99在线
|
亚洲精品日本
|
亚洲国产精品成人一区二区
|
久久久天天操
|
久久精品在这里
|
欧美一区二区久久久
|
一二三区精品福利视频
|