アットウィキロゴ

sensou87

var link_p = new Array();
var link_c = new Array();
var link_l = new Array();
var number_link;
var fight,def;
var x = new Array();
var y = new Array();
var dir = new Array();
var number_dir = new Array();
 
 
function sample() {
 
 
    for (t = 1; t < 101; t++) {
        dir[t] = new Array();
    }
 
 
    faststep();
 
 
    number_link = 0;
 
    var timer;
    var delay = 100;
 
 
    var loop = function () {
 
        select();
 
 
        if (def > 0) game(fight, def);
 
 
        paint();
 
        clearTimeout(timer);
        timer = setTimeout(loop, delay);
    }
 
    loop();
 
 
 
}
 
function game(fight,def) {
 
 
 
    delta = 0;
    if (Math.random() > 0.5) delta = 100;
 
 
 
 
    if (delta > 50) change(fight, def);
    if (delta < 50) change( def,fight);
 
 
}
 
function change(com1,com2) {
 
    var s;
 
    for (s = 1; s < number_link + 1; s++) {
        h = 0;
        if (link_l[s] > 50) h = h + 1;
        if (link_c[s] ==com2) h = h + 1;
        if (h == 2) link_l[s] = 0;
}
 
    number_link = number_link + 1;
    link_p[number_link] = com1;
    link_c[number_link] = com2;
    link_l[number_link] = 100;
 
 
 
 
}
 
 
function paint() {
 
    var sub = new svgpaint();
 
    str = "<svg width=\"500\" height=\"500\">";
 
    for (t = 1; t < 101; t++) {
        g1 = group(t);
        str = str + sub.rect(50 * x[t] - 50, 50 * y[t] - 50, 50, 50, "blue");
    if(t==g1)str = str + sub.rect(50 * x[t] - 50, 50 * y[t] - 50, 50, 50, "red");
    }
 
    str = str + "</svg>";
 
    $("#memo").html(str);
 
}
 
function select() {
 
 
    n1 = 100*Math.random();
    fight = Math.floor(n1) + 1;
    g1 = group(fight);
 
    n1 = number_dir[fight] * Math.random();
    n2 = Math.floor(n1) + 1;
    dd = dir[fight][n2];
    g2 = group(dd);
 
 
    def = 0;
 
 
 
    h = 0;
    if (g1 == g2) h = 100;
    if (h < 50) def = dd;
 
 
}
 
function group(s) {
 
    gg = s;
 
    var tr, sx;
 
    for (tr = 1; tr < 50; tr++) {
        for (sx = 1; sx < number_link + 1; sx++) {
            h = 0;
            if (link_l[sx] > 50) h = h + 1;
            if (link_c[sx] == gg) h = h + 1;
            if (h == 2) gg = link_p[sx];
        }
 
    }
 
 
    return gg;
}
 
 
function faststep() {
 
 
    tx = 0;
    for (s = 1; s < 11; s++) {
        for (sx = 1; sx < 11; sx++) {
            tx = tx + 1;
            x[tx] = s;
            y[tx] = sx;
        }
    }
 
    for (t = 1; t < 101; t++) {
        tx = 0;
        for (s1 = -1; s1 < 2; s1++) {
            for (s2 = -1; s2 < 2; s2++) {
                x1 = x[t] + s1;
                y1 = y[t] + s2;
                sx = search(x1, y1);
                if (sx == t) sx = 0;
                if (sx > 0) tx = tx + 1;
                if (sx > 0) dir[t][tx] = sx;
            }
        }
        number_dir[t] = tx;
    }
 
 
}
 
 
 
 
function search(x1, y1) {
 
    var s, sx, h;
    sx = 0;
    for (s = 1; s < 101; s++) {
        h = 0;
        if (x[s] == x1) h = h + 1;
        if (y[s] == y1) h = h + 1;
        if (h == 2) sx = s;
    }
    return sx;
 
}
 
最終更新:2015年06月22日 17:00