はじめに
スクリプトが最新バージョンであるかを確認し、新しいバージョンが利用可能な場合にコンソールに通知するコードになります。
この記事はメモですので、内容が間違っている可能性がありますのでご注意ください。
また、今回はGitHub Gistを使用する方法になります。
オープンソースにしている場合はGistを使わずともできます。
その方法はたぶん後々投稿します。
サンプルコード
ささっとコードを知りたい人が多いと思うので先にサンプルコードを
CreateThread(function()
Wait(5000)
--fxmanifest.luaから現在のバージョンを取得
local currentVersion = GetResourceMetadata(GetCurrentResourceName(), 'version', 0)
local gistUrl = 'ここにGistのリンクを'
--キャッシュを回避するために現在時刻をパラメータとして付与
local cacheBusterUrl = gistUrl .. '?t=' .. os.time()
--HTTPリクエストを送信してバージョン情報を取得
PerformHttpRequest(cacheBusterUrl, function(err, responseText, headers)
if err ~= 200 then
print('^0バージョン情報の取得に失敗しました。(Gistアクセスエラー)^7')
return
end
local versionInfo = json.decode(responseText)
if not versionInfo or not versionInfo.latest_version then return end
local latestVersion = versionInfo.latest_version
if latestVersion ~= currentVersion then
print('^0-------------------------------------------------^7')
print('^3新しいバージョンが利用可能です!^7')
print('^3現在のバージョン: '..currentVersion..'^7')
print('^2最新のバージョン: '..latestVersion..'^7')
print('^3(最新版をダウンロードしてください)^7')
print('^0-------------------------------------------------^7')
else
print('^2バージョンは最新です。(v'..currentVersion..')^7')
end
end, 'GET', '', {})
end)
GitHub Gist
-
Gist作成ページにアクセス
まず、GitHub Gistにアクセスし、GitHubアカウントでログインしてください。 -
Gist情報を入力
以下の3つの項目を入力していきます。-
① Gist description...
Gistの説明を入力します。後から見て分かりやすいように「
(あなたのスクリプト名) version
」という感じに入力しましょう。 -
② Filename including extension...
ファイル名を入力します。必ず
.json
という拡張子をつけてください。(例:myscript_version.json
) -
③ ファイルの中身
以下のJSONコードをコピーして貼り付けます。
"1.0.0"
の部分は、あなたのスクリプトの最新バージョンに合わせて書き換えてください。{ "latest_version": "1.0.0" }
-
-
Gistを作成
入力が完了したら、Create public gist
をクリックしてGistを作成 -
URLをコピー
-
画面の右上あたりに表示されている
Raw
というボタンをクリックしてください。 -
Raw
ボタンを押すと、JSONファイルの中身だけが表示されたページに移動します。その時にブラウザのアドレスバーに表示されているURL (rawという文字を含んだ左側すべて) をコピーしてください。
-
-
コードにURLを貼り付け
コピーしたURLを、gistUrlのところに貼り付ける
今後について
スクリプトを更新したらfxmanifest.luaのversionを変更し、Gistのjsonの中身も変更することで、機能する。