设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1924|回复: 8
打印 上一主题 下一主题

[已经过期] 能不能别用系统时间判断

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
133 小时
注册时间
2016-4-28
帖子
210
跳转到指定楼层
1
发表于 2016-9-19 14:02:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
$game_variables[999] = Time.Internet.hour
$game_variables[998] = Time.Internet.min       能不能用Internet 来判断时间 做的防止修改的效果?

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

2
发表于 2016-9-19 14:09:02 | 只看该作者
玩家无法联网或者联网失败时打算如何处理?

点评

這個昨天也想過 個人拙見 直接nill阻止相關的事件  发表于 2016-9-19 15:47
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

3
发表于 2016-9-19 16:19:03 | 只看该作者
  1. module M5WT20160919
  2.   module_function
  3.   def get
  4.     url = "http://api.k780.com:88/?app=life.time&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json"
  5.     result = (Win32API.new("Urlmon", "URLDownloadToCacheFile", "ippiii", "i").
  6.     (0,url,buf="\0"*1024,1024,0,0); open(buf.sub(/\0+$/){}, 'rb'){|p| p.read})
  7.     result.match(/timestamp":"(.+?)"/) ? Time.at($1.to_i) : nil
  8.   end
  9. end
复制代码

插入脚本,然后用 M5WT20160919.get 可以返回一个Time对象

几点说明:
1.API接口使用这个服务,每小时有配额限制,如果太多人在用或者用的太频繁的话要交钱才能用
http://www.k780.com/api/life.time
2.联网获取时间的方式为阻塞的,意思就是,如果玩家网络不好的话,游戏会卡住直到联网成功,
另外,即使网络好的话联网照样要时间,意思就是,你把这个东西扔到并行事件里面循环跑的话,游戏瞬间会卡到爆炸
3.获取数据异常时,该方法返回nil
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
644
在线时间
830 小时
注册时间
2016-7-24
帖子
649

开拓者

4
发表于 2016-9-19 16:32:07 | 只看该作者
本帖最后由 QQ蚊子湯 于 2016-9-19 16:33 编辑



沒有實測,不知道讀取的速度,不過像這樣加入等待時間 每隔一段時間才獲取時間應該行得通吧

順帶一提 上面應該不能ˊ直接套到變數 我隨便瞎扯的(X)
2016/07/17 加入RPG製作,勿忘初衷!
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

5
发表于 2016-9-19 16:38:12 | 只看该作者
本帖最后由 喵呜喵5 于 2016-9-19 16:39 编辑
QQ蚊子湯 发表于 2016-9-19 16:32
沒有實測,不知道讀取的速度,不過像這樣加入等待時間 每隔一段時間才獲取時間應該行得通吧

順帶一提 上 ...


1.可以赋值为变量
2.300帧也就是5秒就要获取一次,究竟是怎样的需求会要求这么高的时间同步?半小时同步一次我都觉得太频繁了,网络时间始终在走又不会被玩家改变,需要使用的时候(比如在判断的时候)获取不就好了,你这样等于每5秒游戏卡一下
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
644
在线时间
830 小时
注册时间
2016-7-24
帖子
649

开拓者

6
发表于 2016-9-19 17:18:19 | 只看该作者
本帖最后由 QQ蚊子湯 于 2016-9-19 17:26 编辑
喵呜喵5 发表于 2016-9-19 16:38
1.可以赋值为变量
2.300帧也就是5秒就要获取一次,究竟是怎样的需求会要求这么高的时间同步?半小时同步 ...


因為LZ曾在別的帖子說過想要用時間控制地圖出個明怪,5秒確實有點快,不過這也是提個概念而已

更節省的方法是地圖移動的時候順便判斷一下
缺點是不會產生網游那種怪物在眼前刷新的感覺


也可以像這樣 在條件達成的時候就不繼續獲取


2016/07/17 加入RPG製作,勿忘初衷!
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

7
发表于 2016-9-19 17:48:00 | 只看该作者
QQ蚊子湯 发表于 2016-9-19 17:18
因為LZ曾在別的帖子說過想要用時間控制地圖出個明怪,5秒確實有點快,不過這也是提個概念而已

更節省的 ...

所以都说了……由于是阻塞的,所以你这个事件设置实际上等于:在条件达成的时候游戏就不断卡顿卡顿卡顿卡顿卡顿卡顿卡顿

点评

人家知道的嘛 三、三十分鐘判斷一次總可以了吧 你讓 LZ自己去調整拉 嗚嗚嗚..  发表于 2016-9-19 18:25
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 21:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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