游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2172|回复: 5

一个关于脚本驱动的问题

[复制链接]

2

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2007-8-31 17:21:00 | 显示全部楼层 |阅读模式
我在写一个游戏,用lua驱动的。

但是写到一些事件的时候发现了一个问题:

比如,在游戏里面有个人物走路,从A点走到B点,假定这个走路函数是阻塞操作,那么在这中间如果发生了某个事件,我该怎么捕获呢?捕获以后,脚本又应该怎么做呢?

例:
Goto(x, y),在这个函数调用的过程中发生了某件事,我必须响应他。但是这个函数又是阻塞调用。我该怎么去做?


不知道上面说清楚了没有。。。

7

主题

57

帖子

57

积分

注册会员

Rank: 2

积分
57
发表于 2007-8-31 23:37:00 | 显示全部楼层

Re:一个关于脚本驱动的问题

用多线程试试!

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2007-8-31 23:51:00 | 显示全部楼层

Re:一个关于脚本驱动的问题

线程+任务堆栈

89

主题

822

帖子

847

积分

高级会员

Rank: 4

积分
847
发表于 2007-9-1 09:10:00 | 显示全部楼层

Re:一个关于脚本驱动的问题

线程都不知道怎么死的,游戏事件驱动用论询机制

6

主题

390

帖子

400

积分

中级会员

Rank: 3Rank: 3

积分
400
发表于 2007-9-4 14:14:00 | 显示全部楼层

Re:一个关于脚本驱动的问题

所以说阻塞是邪恶的,用多线程是找死,脚本语言如果有coroutine就用coroutine,没有的话,需要自己轮询。状态机代替简单阻塞。

6

主题

390

帖子

400

积分

中级会员

Rank: 3Rank: 3

积分
400
发表于 2007-9-4 14:14:00 | 显示全部楼层

Re:一个关于脚本驱动的问题

用Lua的话,可以用coroutine。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-19 07:46

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表