Ruby 板


LINE

※ 引述《kons (kons)》之铭言: : 最近刚好在用RMXP做游戏 : 想要写脚本,却遇到了瓶颈,我不懂程式语言啊! : def hit : n = base_agi + @dex_plus.to_i : for i in @states : n *= $data_states[i].hit_rate / 100.0 : end : return Integer(n) : end : 请问一下,以上这段文字的意思要如何解读? : def是什麽意思呢? : for i in @states又是什麽意思?谢谢! 因为我没有实际碰过RMXP 所以某些地方可能解释有错 请各位指正 <(_ _)> def hit 这行代表我们要宣告一个计算"命中率"的函式 def是宣告函式所需的关键字 "hit"就是这个函式的名字 首先 我们先建立了一个变数 n 用来储存计算过後的命中率 第二行 n = base_agi + @dex_plus.to_i 应该是代表着 将n设为 基本敏捷值 + 额外敏捷加成 接下来的for i in @states是一个回圈(或着说是iterator?) 意思是说 把states这个阵列里头的每个数字 一个一个取出来 丢到i里面 然後执行下面这行: n *= $data_states[i].hit_rate / 100.0 将n乘上 (i代表的命中率 / 100.0) $data_states[i].hit_rate/100.0这行就有点复杂了 你可以想像成电脑里有一个表格长这样: data_states | hit_rate | dodge_rate | OOXX | .... ------------------------------------------------------------------------- 1 | 30 | 10 | 5 | 2 | 31 | 11 | 5 | 3 | 32 | 11.5 | 6 | . . . (上面那是乱写的 实际数值一定不是那样) 所以说 假设我们的i里面的数值是22 我们要怎麽知道22所对应到的命中率是多少呢? 很简单 就查上面的表 $data_states[i]可以想像成 要电脑找出data_states这个栏位里面 数值是22的那行 後面的 .hit_rate 就是要电脑找出这一行里面hit_rate的值了 再把得到的hit_rate值除以100 换成小数 再把n乘上得到的数值 把@states里面的每个值都这样做一遍之後 再把n回传回去 就完成了! 最後得到的n就是计算出来的命中率 -- 只看程式码也可以写出这麽大一篇 这告诉我们好的变数名称是多重要的一件事 ̄▽ ̄ 注:有些地方实际上不是我说的方法 不过这样去理解应该是不会有什麽问题.. --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.170.48.15 ※ 编辑: poga 来自: 218.170.48.15 (07/15 19:36)
1F:推 kons:谢谢!我大致上了解了 07/15 19:44
2F:推 fayhong:ya! 回圈 07/16 14:40







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP