作者共發了14篇帖子。 內容轉換:不轉換▼
 
點擊 回復
1139 14
神秘魔塔2.1.1的兩個新特性
巨大八爪魚 十九級
1樓 發表于:2015-8-12 10:57
1.如果不解壓,就無法玩遊戲。遊戲會彈出窗口提示:請解壓后再玩遊戲,否則無法存檔的哦。
2.如果檢測到目錄下沒有save文件夾,則會自動創建。另外,遊戲發佈時我也會故意把save文件夾刪除。
巨大八爪魚 十九級
2樓 發表于:2015-8-12 10:58
特性【2】的實現代碼:
#==============================================================================
# 本脚本是巨大八爪鱼编写的,使用和转载请保留此信息
#==============================================================================

def system_check
  # 自动创建Save文件夹,防止存档时才出错
  unless File.directory?("Save")
    Dir::mkdir("Save")
  end
end

system_check
巨大八爪魚 十九級
3樓 發表于:2015-8-12 11:00
巨大八爪魚 十九級
4樓 發表于:2015-8-12 11:37
回復:1樓
提示改为:请解压后再玩游戏,否则无法存档的哦。

巨大八爪魚 十九級
5樓 發表于:2015-8-12 11:43
特性【1】的实现代码:
def str_begins_with(str, substr)
  return substr == str[0, substr.length]
end

# 获取Windows系统的临时目录路径(WinRAR默认解压到此目录)
# 加一个空字符串的目的是使该变量与ENV对象脱离关系
# 这样才能修改字符串内容而不影响原环境变量的值
temp = ENV["TEMP"] + ""
temp.gsub!(/\\+/, "/")

folder = File.expand_path(".") # 获取game.exe所在文件夹
if str_begins_with(folder, temp)
  p "请解压后再玩游戏,否则无法存档的哦!"
  exit
end

效果:
巨大八爪魚 十九級
6樓 發表于:2015-8-12 11:47
特性1是專門針對那些玩遊戲不解壓,然後發現關了遊戲之後存檔全部丟失在那抱怨的人。
巨大八爪魚 十九級
7樓 發表于:2015-8-12 11:48
我還要用2345好壓+WinXP系統測試特性2
巨大八爪魚 十九級
8樓 發表于:2015-8-12 11:48

回復:7樓

是特性1

巨大八爪魚 十九級
9樓 發表于:2015-8-12 11:52
合併:
#==============================================================================
# 本脚本是巨大八爪鱼编写的,使用和转载请保留此信息
#==============================================================================

def str_begins_with(str, substr)
  return substr == str[0, substr.length]
end

def system_check
  # 自动创建Save文件夹,防止存档时才出错
  unless File.directory?("Save")
    Dir::mkdir("Save")
  end
 
  # 获取Windows系统的临时目录路径(WinRAR默认解压到此目录)
  # 加一个空字符串的目的是使该变量与ENV对象脱离关系
  # 这样才能修改字符串内容而不影响原环境变量的值
  temp = ENV["TEMP"] + ""
  temp.gsub!(/\\+/, "/")
 
  # 检查游戏是否已经解压
  folder = File.expand_path(".") # 获取game.exe所在文件夹
  if str_begins_with(folder, temp)
    p "请解压后再玩游戏,否则无法存档的哦!"
    exit
  end
end

system_check
巨大八爪魚 十九級
10樓 發表于:2015-8-12 12:17
回復:9樓

p "请解压后再玩游戏,否则无法存档的哦!"
改成
print "请解压后再玩游戏,否则无法存档的哦!"

以免對話框中有引號
巨大八爪魚 十九級
11樓 發表于:2015-8-12 12:17
#==============================================================================
# 本脚本是巨大八爪鱼编写的,使用和转载请保留此信息
#==============================================================================

def str_begins_with(str, substr)
  return substr == str[0, substr.length]
end

def system_check
  # 自动创建Save文件夹,防止存档时才出错
  unless File.directory?("Save")
    Dir::mkdir("Save")
  end
 
  # 获取Windows系统的临时目录路径(WinRAR默认解压到此目录)
  # 加一个空字符串的目的是使该变量与ENV对象脱离关系
  # 这样才能修改字符串内容而不影响原环境变量的值
  temp = ENV["TEMP"] + ""
  temp.gsub!(/\\+/, "/")
 
  # 检查游戏是否已经解压
  folder = File.expand_path(".") # 获取game.exe所在文件夹
  if str_begins_with(folder, temp)
    print "请解压后再玩游戏,否则无法存档的哦!"
    exit
  end
end

system_check
巨大八爪魚 十九級
13樓 發表于:2015-8-14 17:37
回復:12樓
那样很多特性都无法展现了
巨大八爪魚 十九級
14樓 發表于:2015-8-15 06:23
以后的版本都要有这两个特性!
巨大八爪魚 十九級
15樓 發表于:2015-10-22 12:56
在检查游戏是否已经解压的時候,如果檢查到遊戲解壓到的目錄是Windows臨時文件夾,那麼就彈出提示。
不過,WinRAR裡面有一個設置功能,可以修改默認臨時解壓目錄到其他目錄,比如(E:\temp),如果是這種情況的話,一般遊戲關閉后存檔文件不會被自動刪除,所以可以不管。腳本只需要檢查是不是被解壓到Windows默認的臨時目錄里就行了,因為那個目錄里的文件不穩定,容易丟失。

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
(快捷鍵:Ctrl+Enter)
 

本帖信息

點擊數:1139 回複數:14
評論數: ?
作者:巨大八爪鱼
最後回復:巨大八爪鱼
最後回復時間:2015-10-22 12:56
 
©2010-2024 Arslanbar Ver2.0
除非另有聲明,本站採用創用CC姓名標示-相同方式分享 3.0 Unported許可協議進行許可。