用gamemaker源代码的代码怎么自动移动游戏窗口

新人想问问一个关于房间跳转和玩家移动的问题!【gamemaker吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:9,605贴子:
新人想问问一个关于房间跳转和玩家移动的问题!收藏
我设置玩家碰到门跳转到下个房间,我一直摁着右键跳转到下一个房间还是会流畅地往右走,如果我在跳转前摁了其他键,比如攻击键跳跃键或者左键,在跳转到下一个房间时就在下一个房间门口停住不动了。不知道为啥。觉得和keyboard_lastkey 有关系,强制改成右键还是不行,然后看到这个keyboard_key_press(key)可以模拟按键,但是也没用,还是在门口停住不动,求助。。。。
登录百度帐号推荐应用主题 : 我想请教下在iphone里可否嵌入GameMaker做出来的小游戏?
级别: 骑士
UID: 89375
可可豆: 1669 CB
威望: 2281 点
在线时间: 396(时)
发自: Web Page
来源于&&分类
我想请教下在iphone里可否嵌入GameMaker做出来的小游戏?&&&
  有知道的朋友,麻烦告诉下 是否有可行性,小弟赶集不尽
级别: 骑士
UID: 89375
可可豆: 1669 CB
威望: 2281 点
在线时间: 396(时)
发自: Web Page
级别: 骑士
UID: 89375
可可豆: 1669 CB
威望: 2281 点
在线时间: 396(时)
发自: Web Page
级别: 版主
UID: 85617
发帖: 4121
可可豆: 32421 CB
威望: 35740 点
在线时间: 1247(时)
发自: Web Page
回 2楼(yz022) 的帖子
可以啊,买个ios版本就行
TerryLin2011年冬季斯坦福大学公开课:iOS应用开发教程/bbs/read.php?tid=88801
级别: 新手上路
可可豆: 28 CB
威望: 28 点
在线时间: 16(时)
发自: Web Page
是收费的软件
级别: 新手上路
可可豆: 40 CB
威望: 40 点
在线时间: 3(时)
发自: Web Page
选择千锋 选择卓越&&千锋3G 手机软件开发培训第一品牌&& &&
千锋3G培训学院:iOS培训&& 北京iOS培训
关注本帖(如果有新回复会站内信通知您)
苹果公司现任CEO是谁?2字 正确答案:库克
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 浏览移动版用gamemake的代码怎么自动移动游戏窗口_移动游戏吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:58贴子:
用gamemake的代码怎么自动移动游戏窗口收藏
用gamemake的代码怎么自动移动游戏窗口就是要达到游戏会自动突然移动游戏窗口的效果,用什么代码可以?
登录百度帐号推荐应用GameMaker使用DLL让你轻松实现3D游戏制作和特效
高级篇:强有力的外用库调用--DLL使用---让你轻松实现3D游戏制作和特效
一. DLL介绍
当你觉得使用GM内部功能来制作游戏已不能满足你更高的要求时(比如3D游戏的制作),你完全可以利用GM开放的插件使用功能来大大扩充GM的功能,从这一点说,GM是无所不能的。当然前提
是你自己会编写插件或者可以从其它渠道获得插件(你完全可以去网上寻找免费的大量插件,从GM官方网站的论坛中有一个专门的栏目,里面有大量的资源,你可以的定时去查找)。
在GM中使用插件的方式是使用DLL文件(即动态连接库,后缀名为*.dll的文件)。在DLL文件中你可以定义各种函数。这些包含各类功能函数的DLL文件可以在那些支持编写DLL文件的编程语言中
编写(比如C语言,Delphi,VB等),如果你想自己编写当然你肯定就要熟练的掌握一门编程语言,对于初学者或这不想自己动手编写的人来说,你完全可以从网上下载别人的插件来扩充功能以
及学习使用。本书光盘附送的3D游戏编写插件也是从网络上得到的一个强大的DLL库文件。对于使用DLL你可以完全这样理解,在GM中导入它,然后就把它的函数当作GM的函数使用,和GM自带的
功能语句一样,你可以随时调用来实现某种强大的GM不能实现的功能。
DLL文件中调用的函数必须有一种指定的格式,才能被GM认识读取。每个函数最多可以有12个参数,每一个都可以是一个数值(在C语言中是双值)或者是一个字符(为空则终止的字符,null-
terminated)。(不过对于大于4个参数的函数,在当前的GM中只有参数类型都为数值ty_real时才被GM支持)。参数必须返回为一个数值或者为一个遇空终止的字符。
二. 如何调用
第一步:注意保存DLL文件到你的工作目录
如果你决定要调用DLL函数后,建议先把DLL文件放在你保存游戏文件的目录,或者直接导入为GM的数据(data)文件,选择为输出到工作目录下即可。如果你的DLL文件还包括其他文件比如一
些图标等,你最好也把它存到DLL同一目录下,否则可能调用不到其它资源文件。
第二步:在GM中的调用
要在GM中使用DLL函数你首先需要指定一个特殊的GM函数来定义这个要调用的外部函数,
external_define(dll,name,calltype,restype,argnumb,arg1type,arg2type,
dll是DLL文件的文件名,name是功能函数的名字,calltype使用呼叫的协定(方式),它有两种方式分别为dll_cdel或者dll_stdcall。restype是结果的类型,它也有分为两种类型ty_real或
者ty_string。argnumb是参数的个数(0-12个之间)。下一步,对于每个参数你必须指定它的类型,你可以再使用ty_real或者ty_string。当有四个以上的参数是所有它们的类型必须都为
调用DLL中的函数时函数本身返回到这个函数的id值,这个id值很重要因为它在后面会被呼叫到。比如在一个例子中,在游戏开始时你可能要使用到下列GM代码:
& global.mmm = &
& & 这是id
external_define('MYOWN.DLL','MyMin',dll_cdecl,ty_real,2,ty_real,ty_real);
& global.ddd = &
external_define('MYOWN.DLL','DoubleString',dll_cdecl,ty_string,1,ty_string);
做完上一步,现在你可以决定你是否要呼叫外部功能函数来操作数值字符,从而实现某个功能,你可以使用下面的函数:
external_call(id,arg1,arg2, &
呼叫外部指定id的外部函数,后面跟上参数。你必须要给出正确的参数个数和每个参数的类型(数值还是字符)。这个函数本身返回外部函数操作后的结果。
可以再看一个例子:
external_call(global.mmm,x,y);即使用id为global.mmm的外部函数利用x,y作为变量参数计算结果并赋值给aaa。
external_call(global.ddd,'Hello');即使用id为global.ddd的外部函数来操作'hello'字符,计算结果并赋值给sss。
*关于return()
这里要注意一般DLL文件调用和脚本有很大关系,可以说是分不开的,使用了脚本,脚本本身有时也可以相当于一个函数,返回一个值,而return就是得到这个值,这样调用起来非常方便,在以后慢慢
使用中就能体会到,这个与脚本有密切关系的关键字就是:return(expression),或者是return(argument0,argument1...)当使用时,结果是获得执行这个脚本得到的结果值.
比如我定义了一个名为object_getX的脚本,在里面我写了代码:"return(一个返回到物体X坐标的函数或代码+参数)",则可以用脚本object_getX(参数)来得到一个物体的横坐标.
关于return()更多说明,在前面章节中还有介绍,可以查阅.
三.DLL文件的释放/删除
当你不再想使用DLL时你最好把它释放掉,或者说删除掉。
利用external_free(dll)
你可以在游戏中释放掉指定文件名的DLL文件。这在特定时候是必要的(比如你把DLL文件当为data文件导入)只有它被释放时才能被从游戏中删除.最好记得这个步骤,
特别是在游戏结束时.
四.利用DLL返回代码或脚本
你可能会想知道如何在一个DLL文件库中编制一个在游戏中起某些作用函数,例如你可能想建立一个DLL文件用来增加一个物体在游戏中的实例,要实现的最简单的方法是让你的DLL函数返回一个
包含有一段GM语言的代码,然后用下列函数来执行这个字符(也即执行这段GM代码).
excute_string(str),其中str即为DLL返回的字符(代码).本函数执行这个功能,增加物体的实例.
简洁说就是说可以利用这个函数来执行一段由DLL返回的代码.
另外还有一个函数:
execute_file(fname),可以让DLL建立一个带有脚本(script)的可执行文件.
就是说可以利用这个函数来执行一个脚本文件.
ccc = external_call(global.ddd,x,y);
execute_string(ccc); /那应该是执行ccc这段代码产生作用.
在极少数情况下,你的使用DLL文件时可能回需要得到游戏图形窗口的句柄(handle),
通过下面这个函数就可以获得然后可以被传输到DLL文件.
window_handle() //返回主要窗口的句柄
六.注意事项
1.注意DLL文件不能在游戏安全模式(secure mode)下使用.
2.DLL插件确实是一非常强有力的工具,但建议你在理解熟悉它后,觉得有必要时再使用,一般GM提供的功能完全足以应付大多数游戏制作.
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。鑷?姩鐧诲綍
銆}

我要回帖

更多关于 gamemaker代码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信