ろむのシ的メモ+α

Web系のブラウザゲーのツールとか作ったりつくらなかったりしてます

beyondが更新されないので・・・

建設中施設の点滅と出兵時刻計算が使えなくなったのを修正する何かです。

自分で修正してください。
出兵時刻計算の修正
5072行目を

    var tim = td.textContent.match(/到着まで: (\d+):(\d+):(\d+) 到達時間/);

から

    var tim = td.textContent.match(/到着まで[:|:][\s| ]*(\d+):(\d+):(\d+)[\s| ]*到達時間/);

建設中施設の点滅の修正
6480行目を

    var xpath = '//*[@id=\"actionLog\"]/ul/li/span[@class=\"buildStatus\" and starts-with(text(),\"建設\")]/a';

から

    var xpath = 'id("actionLog")//li/span[@class="buildStatus" and contains(.,"建設")]/a';

これだけで動くようになると思います。


2010/07/23追記
出兵表示機能の修正
5322行目を

    var xy = tds[i+0].innerHTML.match(/((-?\d+),(-?\d+))$/);

から

    var xy = tds[i+0].innerHTML.match(/[\(|(](-?\d+),(-?\d+)[)|\)]$/);


2010/07/24追記
新施設への対応?
1250行目付近の

    var cost_mura=[
        [400, 136, 104, 160],
        [936, 319, 243, 374],
        [1685, 573, 438, 673],
        [2467, 1357, 1110, 1233],
        [4194, 2307, 1887, 2097],
        [7191, 3954, 3236, 3596],
        [11505, 6327, 5177, 5753],
        [18776, 13560, 10430, 9387],
        [33912, 24492, 18839, 16956],
        [61043, 44087, 33914, 30523],
        [106495, 85196, 66939, 45640],
        [190570, 152456, 119786, 81672],
        [340166, 272133, 213820, 145786],
        [505021, 456148, 423566, 244365],
        [844765, 763014, 708513, 408756]
    ];

の後に

    var cost_mihari = [
        [600,840,600,360],
        [960,1344,960,576],
        [1536,2150,1536,922],
        [2458,3441,2458,1475],
        [3932,5505,3932,2359],
        [6291,8808,6291,3775],
        [9437,13212,9437,5662],
        [14156,19818,14156,8493],
        [21233,29727,21233,12740],
        [31850,44590,31850,19110],
        [44590,62426,44590,26754],
        [62426,87396,62426,37456],
        [87397,122355,87397,52438],
        [122355,171297,122355,73413],
        [159062,222686,159062,95437],
        [206780,289492,206780,124068],
        [0,0,0,0],
        [0,0,0,0],
        [0,0,0,0],
        [0,0,0,0]
    ];
    var cost_daisyukusya = [
        [200,114,200,438],
        [320,183,320,701],
        [512,293,512,1121],
        [768,439,768,1682],
        [1152,658,1152,2523],
        [1728,987,1728,3784],
        [2419,1382,2419,5298],
        [3387,1935,3387,7418],
        [4741,2709,4741,10385],
        [6637,3793,6637,14538],
        [8628,4930,8628,18900],
        [11217,6409,11217,24570],
        [14582,8332,14582,31941],
        [18956,11735,18956,40620],
        [25817,16429,25817,49286],
        [32271,22003,32271,60141],
        [42172,29337,42172,69675],
        [52715,38963,52715,84803],
        [66009,49506,66009,93512],
        [79211,62708,79211,108914]
    ];
    var cost_enseikunren = [
        [2884,4486,5977,2723],
        [4614,7177,9484,4357],
        [7382,11483,15174,6972],
        [11811,18373,24279,11155],
        [18898,29397,38846,17848],
        [28347,44096,58269,26772],
        [42521,66143,87404,40158],
        [63781,99215,131105,60238],
        [0,0,0,0],
        [0,0,0,0]
    ];
    var cost_syuugyousyo = [
        [1600,1200,600,600],
        [2240,1680,840,840],
        [3136,2352,1176,1176],
        [4390,3293,1646,1646],
        [6146,4610,2305,2305],
        [8605,6454,3227,3227],
        [11186,8390,4195,4195],
        [14542,10907,5453,5453],
        [18905,14179,7089,7089],
        [24577,18433,9216,9216],
        [31950,23963,11981,11981],
        [38340,28755,14378,14378],
        [46008,34506,17253,17253],
        [55210,41407,20704,20704],
        [66252,49689,24844,24844],
        [72877,54658,27329,27329],
        [80164,60123,30062,30062],
        [88181,66136,33068,33068],
        [96999,72749,36375,36375],
        [106699,80024,40012,40012]
    ];

を追加
さらにその下の

    costs["村"] = cost_mura;

の下あたりに

    costs["見張り台"] = cost_mihari;
    costs["大宿舎"] = cost_daisyukusya;
    costs["遠征訓練所"] = cost_enseikunren;
    costs["修行所"] = cost_syuugyousyo;

を追加で新施設も反映されるようになります。
因みに見張り台の17-20と遠征訓練所の9-10はwikiに情報が無いのでコスト0になってます。


2010/8/1追記
遠征訓練所を立ててる時に出兵tooltipが変になる修正
新施設への対応を含まない時の行数で書きます。
4286行目の

        var map = $("mapOverlayMap");
        if( map ) {
            var lv = map.innerHTML.match(/訓練所 LV.([0-9]+)/);

から

        var map = $x('//area[starts-with(@alt, "訓練所")]');
        if( map ) {
            var lv = map.alt.match(/LV.([0-9]+)/);



他の機能でもあればどうぞ。暇なら見てみます。