gamemaker吧 关注:13,629贴子:95,048
  • 3回复贴,共1

gm8的脚本能传递数组吗

只看楼主收藏回复

想在gm8里,给脚本传递数组地址,然后通过这个数组地址可以一次性传递很多的值,但是不知道怎么实现?有没有大佬知道啊


IP属地:广东1楼2024-11-07 14:09回复
    不能


    IP属地:山东2楼2024-11-07 22:57
    回复
      0、GM8没有传递数组功能,参数最大只能传递16个;
      1、GM8没有返回多个值的功能;
      2、如果新建一个instance往成员变量里放数据,没有这方面的限制;
      3、GM8里instance的id只是一个数字。
      ------------------------------------
      所以,直接回答题主的问题是“不能”,但题主所说的想实现的功能,可以做到。比如:
      0、制作一个专门的object,不设置任何事件/动作,就用来“传递”;//假设名字是obj_scr
      1、调用script的过程就变成了 创建instance、导入数据、运行script(传递id)、从instance上“回收”返回值、instance destroy;
      2、对应script里就不是从argument[0..15]里获得参数了,而是从argument[0].data[0..1024]上获得;
      3、要返回的值也不是用return返回了(当然仍然可以用这个来强行结束script),而是把值(允许多个)写到argument[0].result[0..1024]去


      IP属地:北京3楼2024-11-18 13:47
      回复
        之前看过别人的分析文章,gm8好像实际上并没有真的数组。
        实在不行你可以尝试使用list,就是记得去释放


        IP属地:广东4楼2024-11-19 09:28
        回复