#!/usr/bin/env ruby -Ks =begin = 砦取得現況表 前回結果ファイルと攻城戦ログを読み込んで現在の時系列表を作成します。 最終時間は現在時間です。 それ以外は攻城戦ログを読み込んで最終結果とします。 ファイル名:timetable_YYYYMMDD.html == 作者 by silica as 冬物語の人 http://winter.sgv417.jp/ =end require 'gvglib.rb' # 基本設定(CGI/CSS) world = "Baldur" # ワールド名(鯖名) refresh = 30 # 更新間隔(秒) link = "link" # 外部のCSS/JavaScriptはlink, HTML単体の時は"" cgi_path = "./timetable.cgi" # 砦取得現況表HTMLファイル(パス) index_path = "./index.html" # インデックスへのリンク(TOPに戻るリンク先) img_path = "./img/" # 生成されるHTMLから見たImageディレクトリの場所 css_file = "racer.css" # 使用するCSSファイル css_set = img_path + css_file # HTML内のCSSファイルパス css_read = "./img/" + css_file # HTMLに読み込むCSSファイルパス map_file = "mapviewer.js" # 使用するJavaScriptファイル map_set = img_path + map_file # HTML内のJavaScriptファイルパス map_read = "./img/" + map_file # HTMLに読み込むJavaScriptファイルパス start_time = "20:00:00" # 攻城戦開始時間 end_time = "22:00:00" # 攻城戦終了時間 file_date = Date.today - Date.today.wday # 先週の日曜日 or 今日 (YMD) bef_ymd = (file_date - 7).ymd # 一週間前の日付を設定する #log_dir = "C:/bin/racer/freya/log/" # 攻城戦ログのあるディレクトリ #log_dir = "D:/RagnarokOnline/ろ++/log/" # ディレクトリ log_dir = "D:/RagnarokOnline/RoCha!!/Log/" # ディレクトリ #log_path = log_dir + "time_" + file_date.ymd + ".txt" # タブ形式 #log_path = log_dir + file_date.ymd_under + ".txt" # ろ++形式 log_path = log_dir + "log_" + world + "_" + file_date.ymd + ".txt" # RoCha!!形式 # ログファイルの読み込み(形式に合わせて変更する) if FileTest.exist?(log_path) == true #fortlog = log_read_format(log_path) # 自動判別 #fortlog = log_read_ropp(log_path) # ろ++形式ログ fortlog = log_read_rocha(log_path) # RoCha!!形式ログ #fortlog = log_read_chatpon(log_path) # ちゃっぽん形式ログ else print log_path, " は見つかりませんでした。\n" exit end # 前回の砦所有リスト設定 world = check_argv_world(world) # ワールド名のチェック bef_fort_path = "./" + world + "/log/fortlist_" + bef_ymd + ".txt" #bef_fort_path = "D:/gvgf/fort.txt" time_title = "時系列表\ " + world + " (" + file_date.ymd_slash + ")" # 前回の砦名一覧リストチェック if FileTest.exist?(bef_fort_path) == true bef_fortlist = log_read_fortlist(bef_fort_path) # 読み込み else # print bef_fort_path, " は見つかりませんでした。\n" # print "前回の結果を初期化して使います。\n" bef_fortlist = fortlist_init('', 0) # 初期化 end now_fortlist = fortlist_make(bef_fortlist, fortlog) # 今回の砦所有リスト in_time, fortname, guild = fortlog.last # ログの最終占領時間、経過時間 if in_time == nil then in_time = start_time end # ログが空白なら開始時間にする # 攻城戦ログから砦別占領回数のリスト作成 total_break = fortlog.length # 占領総回数(ログの長さ) fort_breakcount = fortlist_breakcount(bef_fortlist, fortlog) perfect_defense = fortlist_perfect_defense(fort_breakcount) # 堅守砦リスト fort_breaktime = fortlist_breaktime(bef_fortlist, fortlog) # 砦別最終占領時間 average = fortlist_average(fort_breakcount, total_break) defense = fortlist_defense(fort_breakcount, average) race_fort = fortlist_race(defense) # レース会場リスト # 砦別リスト作成 breaklist = breaklist_fort_start(bef_fortlist, start_time) breaklist = breaklist_fort_now(breaklist, fortlog) breaklist = breaklist_fort_end(breaklist, now_fortlist, in_time) if ARGV[0] == nil # 引数が指定されていない print html_charset_ShiftJIS # 文字コード設定 end # HTML出力 print html_first css_map = html_head_insert(link, css_set, css_read, map_set, map_read) if ARGV[0] == nil # 引数が指定されていない css_map += html_head_refresh(cgi_path, refresh) # 再読み込み設定 end print html_head(time_title, css_map) print "

時系列表\

\n" print "

" + world + " (" + file_date.ymd_slash + ")

\n\n" print "

最終結果\

\n" val = html_image(img_path + "Valkyrie.gif", "80", "15", "Valkyrie") chu = html_image(img_path + "Chung-Rim.gif", "80", "15", "Chung-Rim") bri = html_image(img_path + "Britoniah.gif", "80", "15", "Britoniah") lui = html_image(img_path + "Luina.gif", "80", "15", "Luina") print "

\n" print html_link_hrefid("./gvgf.html", "Valkyrie", "index_Valkyrie", val), "\n" print html_link_hrefid("./gvgf.html", "Chung-Rim", "index_Chung-Rim", chu), "\n" print html_link_hrefid("./gvgf.html", "Britoniah", "index_Britoniah", bri), "\n" print html_link_hrefid("./gvgf.html", "Luina", "index_Luina", lui), "\n" print "

\n" # JavaScriptで画像を出すのに必要 print "
map
\n" print html_fortlist_lastinfo(img_path, fort_breakcount, fort_breaktime, "Last update") # print "\n

堅守砦

\n" # print "

\n", perfect_defense, "\n

\n" # print "

レース会場

\n" # print "

\n", race_fort, "\n

\n" print "

時系列表\

\n" print html_timetable("./gvgf.html", img_path, breaklist, start_time, in_time, "Time Table") # print "

総占領回数

\n" # print "

\n", total_break, "回

\n" # 攻城戦開始からの経過時間 20:00:00の秒数:72000sec # 20砦合計の全体秒数 # total_time = (str2sec(in_time) - str2sec(start_time)) * 20 # average_have = sec2str(total_time / total_break) # 平均保持時間 # print "

各砦平均保持時間

\n" # print "

\n", average_have, "

\n" # print html_footer("./index.html", "link") exit