橙光游戏吧 关注:280,133贴子:3,365,668

【闲聊】关于字符串索引的一点想法

只看楼主收藏回复

(以下内容忽略)字符串作为数据层和图像层的重要的交流工具,可以说是是橙光文字游戏制作工具黑科技方面的一个重要组成部分,但是,黑科技部分另外一个很重要的组成部分是指针(索引),最常见的应用是批量赋值。(以上内容忽略)
如果有橙光文字游戏制作工具蛋疼指令排行榜,我建议字符串图片批量赋值为某固定值排第一。
(这是某密室逃脱游戏图片-数据配对更新程序段)
我编的时候内心一直在鞭打程序猿。本来一个简单的代码段就能解决的你硬生生让我复制粘贴到吐。
循环
数值操作:[030:字符串指针]=2
字符串\v[030]="物品\v[\v[29]].png
数值操作:[030:字符串指针]+=1
数值操作:[029:参与显示立绘的编号]+=1
以上反复
(程序猿先生,弄一个字符串数组的随机访问很难吗,难道内部字符串不是按照数组存储的?)
(我不信不是数组存储的,或者,块状链表访问很难么)
所以,为了在橙光程序猿发现这个不便前弄个替代,我们先做个字符串索引伪程序。
(对了,经过试验,发现橙光支持跨工程复制粘贴,所以我感觉我在做一次制作终生有用的工程,所以才有动力)
(剩余内容楼下更新,另外,有认识橙光程序猿的帮忙at一下)


IP属地:浙江1楼2017-04-28 11:50回复
    在看教程之前,我介绍一下橙光的一个良心功能——呼叫子剧情。
    简单说,这句语句的功能就是把子剧情内容替换掉这个语句。(有兴趣的自行了解一下宏或过程,感觉和这个功能一样,就是只能用全局变量传递参数和返回值有点蛋疼)
    那么,可以建立一个叫字符串X赋值的子程序,将第五十个字符串(作参数)复制给字符串X。

    然后,只要将不蛋疼语句中的字符串x赋值改成
    呼叫子剧情:字符串\v[30]赋值
    ,然后最前面加一句
    字符串:50-字符串赋值过程参数="物品\v[\v[29]].png"
    就大功告成了
    但是。
    橙光不给字符串指针就算了,自己做一个替代就好了。
    不给函数就算了,过程替代就好了。
    不给形参就算了,自己模拟内存分配过程就好了。
    函!数!指!针!都!不!给!
    这是逼我用条件分歧吗!
    会复制粘贴吐的你知不知道!


    IP属地:浙江2楼2017-04-28 12:10
    回复
      余下内容吊个胃口,感兴趣的读者可以自己思考(反正不是暴力的条件分歧,自从我做2048弄出几百个条件分歧且成功让橙娘崩了之后我就对条件分歧有了心理阴影)
      提示:
      https://tieba.baidu.com/p/4320095720?pid=94988107276&cid=0#94988107276
      我的回复(20楼)


      IP属地:浙江3楼2017-04-28 12:14
      回复
        (* ̄3 ̄)╭♡❀小花花砸你


        来自Android客户端4楼2017-04-28 13:25
        收起回复
          看不懂但是要暖暖


          IP属地:广东5楼2017-04-28 18:02
          收起回复
            能说一下第一张图为什么每个物品的赋值都一样吗...我..看不懂QAQ


            来自Android客户端6楼2017-04-28 22:14
            收起回复
              一直都是手动给字符串进行赋值的。。。。原来可以用索引喵


              来自手机贴吧8楼2017-04-29 09:39
              回复
                为什么一楼那个图不做个循环 我知道 字符串的图片不一样 可是代码完全一样 无非就是一开始第一章到最后第x张


                来自手机贴吧9楼2017-04-29 09:42
                收起回复
                  这是最终成品


                  可以看到,比起原来的直接一个赋值的简单粗暴办法,这个多了一个条件分歧,精妙之处就在这里。
                  还可以优化。但是,没人的话我就不准备更了。
                  优化方向:
                  1.一次只能呼叫后一个吗?
                  2.只能往后呼叫吗?


                  IP属地:浙江10楼2017-04-29 16:15
                  回复
                    暖贴


                    IP属地:山东来自Android客户端11楼2017-04-29 16:28
                    收起回复
                      顺便一提,我理解中访问的目的就两个,一个取值,一个赋值。
                      取值很简单,可以直接\t[\v[x]]取值,所以只需要解决赋值这个问题就好了。


                      IP属地:浙江来自iPhone客户端12楼2017-05-02 17:12
                      收起回复
                        dd 看不懂 但是感觉思路超棒
                        我就一直不会索引 泪目。


                        IP属地:安哥拉来自Android客户端13楼2017-05-02 17:26
                        收起回复
                          自顶


                          IP属地:浙江来自iPhone客户端14楼2017-05-04 12:42
                          收起回复
                            你这是手机版的?用电脑制作好


                            来自iPhone客户端15楼2017-05-04 23:18
                            收起回复
                              看不懂,但还是要留名,感觉会火


                              IP属地:湖北来自Android客户端16楼2017-05-05 01:22
                              收起回复