STORY LOOP FURRY PORN GAMES C SERVICES [?] [R] RND POPULAR | Archived flashes: 229594 |
/disc/ · /res/ — /show/ · /fap/ · /gg/ · /swf/ | P0001 · P2595 · P5190 |
This is the info page for Flash #137477 |
<p align="left"><font face="Arial" size="12" color="#000000" letterSpacing="0.000000" kerning="1"><b>Description</b></font></p> |
Exit |
Just a quick test to determine if you can select a character to retrieve its stats. This window isn't staying, although it might be replaced by a better one. :3 |
KodaTheOtter 2008 |
<p align="left"><font face="Arial" size="10" color="#000000" letterSpacing="0.000000" kerning="1"><b>FPS:</b></font></p> |
ActionScript [AS1/AS2]
Frame 1_root._quality = "LOW"; game = {TILE_W:48, TILE_H:24, MAP_H:0, MAP_W:0, MAX_H:20, HEIGHT_INC:12, H_D:9, HM_D:8, M_D:6, ML_D:5, L_D:4, SEL_D:3, FL_D:2, XL_D:1, XXL_D:0, xmouse:0, ymouse:0, X_SEL:0, Y_SEL:0, xchar_start:4, ychar_start:5}; game.interested = []; game.mouseover = []; game.paused = false; game.selected_char = undefined; M_First_Names = ["Andy", "Apollo", "Arden", "Ash", "Ayden", "Azela", "Azure", "Brian", "Caru", "Celes", "Chrono", "Cobalt", "Conan", "Cream", "Crimson", "Eddie", "Edgar", "Jerry", "Kane", "Koda", "Kevin", "Leif", "Lucky", "Maq", "Marcus", "Matt", "Michael", "Nicholas", "Nick", "Pepper", "Peter", "Rod", "Ryan", "Sean", "Shaun", "Silver", "Tarin", "Tim", "Toggle", "Zail"]; F_First_Names = ["Abby", "Ann", "Anna", "Ayame", "Azure", "Brianna", "Brit", "Britney", "Chelsey", "Chess", "Evelin", "Fay", "Ginger", "Indigo", "Jill", "Julie", "Keira", "Kira", "Layne", "Lexus", "Maria", "Mel", "Miyuki", "Pepper", "Rem", "Silver", "Tanya", "Tasha", "Tesla"]; Floor1 = [[[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0]], [[0, 0], [13, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [12, 4], [15, 4]], [[0, 0], [10, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [1, 4], [9, 4]], [[0, 0], [10, 4], [1, 4], [1, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [11, 4], [1, 4], [1, 4], [9, 4]], [[0, 0], [5, 4], [3, 4], [4, 4], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [5, 4], [3, 4], [4, 4]], [[0, 0], [5, 3], [3, 3], [4, 3], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [5, 3], [3, 3], [4, 3]], [[0, 0], [10, 2], [1, 2], [9, 2], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [10, 2], [1, 2], [9, 2]], [[0, 0], [5, 2], [3, 2], [4, 2], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [5, 2], [3, 2], [4, 2]], [[0, 0], [5, 1], [3, 1], [4, 1], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [5, 1], [3, 1], [4, 1]], [[0, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0]], [[0, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0]], [[0, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0]], [[0, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0]], [[0, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0]], [[0, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0], [2, 0]]]; Furniture1 = [[3, 8, 1, "railing_0008", game.H_D, []], [3, 7, 2, "railing_0008", game.H_D, []], [3, 6, 2, "railing_0002", game.H_D, []], [3, 5, 3, "railing_0008", game.H_D, []], [3, 4, 4, "railing_0008", game.H_D, []], [3, 3, 4, "railing_0016", game.H_D, []], [4, 8, 0, 5, game.ML_D, [0, 0]], [1, 8, 1, "railing_0007", game.L_D, []], [1, 7, 2, "railing_0007", game.L_D, []], [1, 6, 2, "railing_0001", game.L_D, []], [1, 5, 3, "railing_0007", game.L_D, []], [1, 4, 4, "railing_0007", game.L_D, []], [1, 3, 4, "railing_0014", game.L_D, []], [16, 8, 1, "railing_0007", game.L_D, []], [16, 7, 2, "railing_0007", game.L_D, []], [16, 6, 2, "railing_0001", game.L_D, []], [16, 5, 3, "railing_0007", game.L_D, []], [16, 4, 4, "railing_0007", game.L_D, []], [16, 3, 4, "railing_0014", game.L_D, []], [15, 8, 0, 5, game.ML_D, [0, 0]], [18, 8, 1, "railing_0008", game.H_D, []], [18, 7, 2, "railing_0008", game.H_D, []], [18, 6, 2, "railing_0002", game.H_D, []], [18, 5, 3, "railing_0008", game.H_D, []], [18, 4, 4, "railing_0008", game.H_D, []], [18, 3, 4, "railing_0016", game.H_D, []], [4, 3, 4, "railing_0004", game.H_D, []], [5, 3, 4, "railing_0004", game.H_D, []], [6, 3, 4, "railing_0004", game.H_D, []], [7, 3, 4, "railing_0004", game.H_D, []], [8, 3, 4, "railing_0004", game.H_D, []], [9, 3, 4, "railing_0004", game.H_D, []], [10, 3, 4, "railing_0004", game.H_D, []], [11, 3, 4, "railing_0004", game.H_D, []], [12, 3, 4, "railing_0004", game.H_D, []], [13, 3, 4, "railing_0004", game.H_D, []], [14, 3, 4, "railing_0004", game.H_D, []], [15, 3, 4, "railing_0004", game.H_D, []], [4, 7, 0, 15, game.H_D, []], [4, 7, 0, 12, game.L_D, [1, 1, 1]], [4, 6, 0, 13, game.L_D, [1, 1, 1]], [4, 5, 0, 14, game.L_D, [1, 1, 1]], [4, 4, 0, 5, game.L_D, [0, 0]], [5, 4, 0, 17, game.L_D, [1, 1, 4]], [6, 4, 0, 18, game.L_D, [1, 1, 4]], [7, 4, 0, 19, game.L_D, [1, 1, 4]], [7, 4, 0, 20, game.H_D, []], [9, 4, 0, 21, game.M_D, [0, 0]], [10, 4, 0, 22, game.M_D, [0, 0]], [8, 4, 0, 5, game.L_D, [0, 0]], [11, 4, 0, 5, game.L_D, [0, 0]], [12, 4, 0, 17, game.L_D, [1, 1, 4]], [13, 4, 0, 18, game.L_D, [1, 1, 4]], [14, 4, 0, 19, game.L_D, [1, 1, 4]], [14, 4, 0, 20, game.H_D, []]]; Walls1 = [[0, 13, 0, 10, game.XXL_D], [0, 12, 0, 10, game.XXL_D], [0, 11, 0, 10, game.XXL_D], [0, 10, 0, 10, game.XXL_D], [0, 9, 0, 10, game.XXL_D], [0, 8, 0, 10, game.XXL_D], [0, 7, 0, 10, game.XXL_D], [0, 6, 0, 10, game.XXL_D], [0, 5, 0, 10, game.XXL_D], [0, 4, 0, 10, game.XXL_D], [0, 3, 0, 10, game.XXL_D], [0, 2, 0, 10, game.XXL_D], [0, 1, 0, 10, game.XXL_D], [1, 0, 0, 20, game.XXL_D], [2, 0, 0, 20, game.XXL_D], [3, 0, 0, 20, game.XXL_D], [4, 0, 0, 20, game.XXL_D], [5, 0, 0, 20, game.XXL_D], [6, 0, 0, 20, game.XXL_D], [7, 0, 0, 20, game.XXL_D], [8, 0, 0, 20, game.XXL_D], [9, 0, 0, 20, game.XXL_D], [10, 0, 0, 20, game.XXL_D], [11, 0, 0, 20, game.XXL_D], [12, 0, 0, 20, game.XXL_D], [13, 0, 0, 20, game.XXL_D], [14, 0, 0, 20, game.XXL_D], [15, 0, 0, 20, game.XXL_D], [16, 0, 0, 20, game.XXL_D], [17, 0, 0, 20, game.XXL_D], [18, 0, 0, 20, game.XXL_D], [3, 8, 0, 1, game.XXL_D], [3, 7, 0, 2, game.XXL_D], [3, 6, 0, 2, game.XXL_D], [3, 5, 0, 3, game.XXL_D], [3, 4, 0, 4, game.XXL_D], [18, 8, 0, 1, game.XXL_D], [18, 7, 0, 2, game.XXL_D], [18, 6, 0, 2, game.XXL_D], [18, 5, 0, 3, game.XXL_D], [18, 4, 0, 4, game.XXL_D], [18, 3, 0, 4, game.XXL_D], [18, 2, 0, 4, game.XXL_D], [18, 1, 0, 4, game.XXL_D], [4, 3, 0, 14, game.XXL_D], [5, 3, 0, 14, game.XXL_D], [6, 3, 0, 14, game.XXL_D], [7, 3, 0, 14, game.XXL_D], [8, 3, 0, 14, game.XXL_D], [9, 3, 0, 14, game.XXL_D], [10, 3, 0, 14, game.XXL_D], [11, 3, 0, 14, game.XXL_D], [12, 3, 0, 14, game.XXL_D], [13, 3, 0, 14, game.XXL_D], [14, 3, 0, 14, game.XXL_D], [15, 3, 0, 14, game.XXL_D], [16, 3, 0, 14, game.XXL_D]]; Get_Percentage = function () { return(Math.ceil(Math.random() * 100)); }; MakeMapObject = function (a_array) { game.MAP_W = _root["Floor" + a_array].length; game.MAP_H = _root["Floor" + a_array][0].length; tile_y = 0; while (tile_y < game.MAP_W) { tile_x = 0; while (tile_x < game.MAP_H) { tile_info = _root["Floor" + a_array][tile_y][tile_x]; tile_name = (("t_" + tile_x) + "_") + tile_y; game[tile_name] = new Object(); game[tile_name].tiles = tile_info; game[tile_name].furniture = []; game[tile_name].walls = []; game[tile_name].walkable = true; game[tile_name].inuse = false; game[tile_name].seat = false; if ((tile_y == 0) || (tile_x == 0)) { game[tile_name].walkable = false; } tile_x++; } tile_y++; } item = 0; while (item < _root["Furniture" + a_array].length) { tile_info = _root["Furniture" + a_array][item]; tile_name = (("t_" + tile_info[0]) + "_") + tile_info[1]; if (tile_info[5].length > 0) { game[tile_name].walkable = tile_info[5][0]; game[tile_name].seat = tile_info[5][1]; game[tile_name].seatdir = tile_info[5][2]; } a_length = game[tile_name].furniture.length; game[tile_name].furniture[a_length] = tile_info; item++; } item = 0; while (item < _root["Walls" + a_array].length) { tile_info = _root["Walls" + a_array][item]; tile_name = (("t_" + tile_info[0]) + "_") + tile_info[1]; a_length = game[tile_name].walls.length; game[tile_name].walls[a_length] = tile_info; item++; } }; CreateMap = function () { CurrMap.removeMovieClip(); windows.removeMovieClip(); _root.createEmptyMovieClip("CurrMap", 1); _root.attachMovie("windows", "windows", 2); CurrMap.attachMovie("pointer", "pointer", 1); CurrMap._x = 300; CurrMap._y = 100; tile_y = 0; while (tile_y < game.MAP_W) { tile_x = 0; while (tile_x < game.MAP_H) { tile_name = (("t_" + tile_x) + "_") + tile_y; tile_info = game[tile_name].tiles; if (game[tile_name].tiles[0] != 0) { GetNewTileInfo(tile_x, tile_y, tile_info[1], game.FL_D); CurrMap.attachMovie("floors", tile_name, new_depth); CurrMap[tile_name]._y = new_y; CurrMap[tile_name]._x = new_x; CurrMap[tile_name].gotoAndStop(tile_info[0]); } tile_info = game[tile_name].furniture; item = 0; while (item < tile_info.length) { GetNewTileInfo(tile_x, tile_y, tile_info[item][2], tile_info[item][4]); f_name = (((((("f_" + tile_x) + "_") + tile_y) + "_") + tile_info[item][2]) + "_") + tile_info[item][4]; CurrMap.attachMovie("furniture", f_name, new_depth); CurrMap[f_name]._y = new_y; CurrMap[f_name]._x = new_x; CurrMap[f_name].gotoAndStop(tile_info[item][3]); item++; } tile_info = game[tile_name].walls; item = 0; while (item < tile_info.length) { GetNewTileInfo(tile_x, tile_y, tile_info[item][2], tile_info[item][4]); w_name = (((((("w_" + tile_x) + "_") + tile_y) + "_") + tile_info[item][2]) + "_") + tile_info[item][4]; CurrMap.attachMovie("walls", w_name, new_depth); CurrMap[w_name]._y = new_y; CurrMap[w_name]._x = new_x; CurrMap[w_name].gotoAndStop(tile_info[item][3]); item++; } tile_x++; } tile_y++; } GetNewTileInfo(0, 0, 0, game.SEL_D); CurrMap.attachMovie("select", "select", new_depth); CurrMap.select._y = new_y; CurrMap.select._x = new_x; CurrMap.attachMovie("characters", "char", 10); SetCharLocation(CurrMap.char, game.xchar_start, game.ychar_start, true); rand = 1; while (rand <= 20) { safety_net = 0; rand_x = Math.round(Math.random() * (_root.game.MAP_H - 1)) + 1; rand_y = Math.round(Math.random() * (_root.game.MAP_W - 1)) + 1; while (_root.game[(("t_" + rand_x) + "_") + rand_y].inuse || (!_root.game[(("t_" + rand_x) + "_") + rand_y].walkable)) { if (safety_net < 100) { rand_x = Math.round(Math.random() * (_root.game.MAP_H - 1)) + 1; rand_y = Math.round(Math.random() * (_root.game.MAP_W - 1)) + 1; safety_net++; } else { break; } } if (safety_net < 100) { CurrMap.attachMovie("characters", ["comp" + rand], 10); SetCharLocation(CurrMap["comp" + rand], rand_x, rand_y, false); } rand++; } }; GetNewTileInfo = function (x, y, h, d) { new_y = ((x * (game.TILE_H / 2)) + (y * (game.TILE_H / 2))) - (h * game.HEIGHT_INC); new_x = (x * (game.TILE_W / 2)) - (y * (game.TILE_W / 2)); if ((y - 10) < 0) { y = "0" + y; } new_depth = ((((((((x + 1) + "") + y) + "") + h) + "") + d) * 2) / 2; return(new_depth); }; BuildMap = function () { MakeMapObject(1); CreateMap(); }; Find_Mouse_Position = function () { M_Y = CurrMap._ymouse; M_X = CurrMap._xmouse - 24; xmouse = Math.round(((M_X / (game.TILE_W / 2)) + (M_Y / (game.TILE_H / 2))) / 2); ymouse = Math.round((M_Y / (game.TILE_H / 2)) - (((M_X / (game.TILE_W / 2)) + (M_Y / (game.TILE_H / 2))) / 2)) - 1; i = 3; while (i >= 0) { j = 1; while (j >= 0) { k = 1; while (k >= 0) { new_M_X = M_X; new_M_Y = M_Y + (game[(("t_" + ((xmouse + i) + j)) + "_") + ((ymouse + i) + k)].tiles[1] * game.HEIGHT_INC); new_xmouse = Math.round(((new_M_X / (game.TILE_W / 2)) + (new_M_Y / (game.TILE_H / 2))) / 2); new_ymouse = Math.round((new_M_Y / (game.TILE_H / 2)) - (((new_M_X / (game.TILE_W / 2)) + (new_M_Y / (game.TILE_H / 2))) / 2)) - 1; if ((new_xmouse == ((xmouse + i) + j)) && (new_ymouse == ((ymouse + i) + k))) { xmouse = (xmouse + i) + j; ymouse = (ymouse + i) + k; if ((xmouse == 0) || (ymouse == 0)) { xmouse = (ymouse = 0); } return(ymouse); } k--; } j--; } if (i == 0) { xmouse = (ymouse = 0); return(ymouse); } i--; } }; SetCharLocation = function (obj, cx, cy, user) { obj.curr_x = cx; obj.curr_y = cy; _root.game[(("t_" + cx) + "_") + cy].inuse = true; if (obj.justloaded == undefined) { obj.next_x = (obj.clicked_x = (obj.last_x = cx)); obj.next_y = (obj.clicked_y = (obj.last_y = cy)); obj.justloaded = false; } if (user != undefined) { obj.user_controlled = user; } GetNewTileInfo(cx, cy, _root.game[(("t_" + cx) + "_") + cy].tiles[1], _root.game.M_D); obj._x = new_x; obj._y = new_y; if (obj.getDepth() != new_depth) { obj.swapDepths(new_depth); } if (obj.xdir == 1) { obj.direction.gotoAndStop(1); } else if (obj.xdir == -1) { obj.direction.gotoAndStop(3); } else if (obj.ydir == 1) { obj.direction.gotoAndStop(4); } else if (obj.ydir == -1) { obj.direction.gotoAndStop(2); } }; SetCharDepth = function (obj, cx, cy) { GetNewTileInfo(cx, cy, _root.game[(("t_" + cx) + "_") + cy].tiles[1], _root.game.M_D); if (obj.getDepth() != new_depth) { obj.swapDepths(new_depth); } }; SelectCharacter = function () { curr_highest = undefined; i = 0; while (i < _root.game.mouseover.length) { if (curr_highest == undefined) { curr_highest = _root.game.mouseover[i]; } else if (_root.CurrMap[_root.game.mouseover[i]].getDepth() > _root.CurrMap[curr_highest].getDepth()) { curr_highest = _root.game.mouseover[i]; } i++; } if (curr_highest != undefined) { _root.game.selected_char = curr_highest; _root.CurrMap[curr_highest].reactions.gotoAndStop(2); _root.windows.gotoAndStop(2); } }; Delete_From_Array = function (the_array, the_item) { temp_array = []; while (the_array.length > 0) { if (the_array[the_array.length - 1] != the_item) { temp_array[temp_array.length] = the_array.pop(); } else { the_array.pop(); } } temp_array.reverse(); i = 0; while (i < temp_array.length) { the_array[i] = temp_array[i]; i++; } delete temp_array; }; Add_To_Array_Randomly = function (the_array, the_item) { the_array_temp_len = the_array.length; temp_array = []; temp_number = Math.floor(Math.random() * the_array.length); while (temp_array.length < (the_array_temp_len + 1)) { if (temp_array.length == temp_number) { temp_array[temp_array.length] = the_item; } else { temp_array[temp_array.length] = the_array.pop(); } } i = 0; while (i < temp_array.length) { the_array[i] = temp_array[i]; i++; } the_array.reverse(); delete temp_array; }; Is_In_Array = function (the_array, the_item) { i = 0; while (i < the_array.length) { if (the_item == the_array[i]) { return(true); } i++; } return(false); }; Select_Randomly_From_Array = function (the_array) { return(the_array[Math.round(Math.random() * the_array.length) - 1]); }; fscommand ("showmenu", "false"); BuildMap(); onMouseMove = function () { Find_Mouse_Position(); game.xmouse = xmouse; game.ymouse = ymouse; GetNewTileInfo(game.xmouse, game.ymouse, game[(("t_" + game.xmouse) + "_") + game.ymouse].tiles[1], game.SEL_D); CurrMap.select._y = new_y; CurrMap.select._x = new_x; if (CurrMap.select.getDepth() != new_depth) { CurrMap.select.swapDepths((new_depth * 2) / 2); } }; onMouseDown = function () { if (!game.paused) { if ((game.xmouse != 0) && (game.ymouse != 0)) { CurrMap.char.clicked_x = game.xmouse; CurrMap.char.clicked_y = game.ymouse; CurrMap.char.SetCharAction("walking"); } SelectCharacter(); } }; currTime_Counter = 0; currTime_Save = 30; onEnterFrame = function () { if (currTime_Counter <= 0) { currTime_Save = getTimer() - currTime; currTime_Counter = 30; } else { currTime_Counter--; } _root.fps.text = (("FPS\nCurrent:\t" + (getTimer() - currTime)) + "\nAverage:\t") + currTime_Save; currTime = getTimer(); };Symbol 13 MovieClip [walls] Frame 1stop();Symbol 13 MovieClip [walls] Frame 11stop();Symbol 31 MovieClip [furniture] Frame 1stop();Symbol 33 MovieClip [select] Frame 1stop();Symbol 50 MovieClip [floors] Frame 1stop();Symbol 55 MovieClip Frame 1stop();Symbol 60 MovieClip Frame 1stop();Symbol 61 MovieClip [characters] Frame 1function findPath(startx, starty, targetx, targety) { path = {}; path.Unchecked_Neighbours = []; path.done = false; path.name = (("node_" + startx) + "_") + starty; var _local7 = Math.abs(startx - targetx) + Math.abs(starty - targety); path[path.name] = {x:startx, y:starty, parentx:null, parenty:null, cost:_local7}; path.Unchecked_Neighbours[path.Unchecked_Neighbours.length] = path[path.name]; while (path.Unchecked_Neighbours.length > 0) { var _local2 = path.Unchecked_Neighbours.shift(); if ((_local2.x == targetx) and (_local2.y == targety)) { make_path(_local2); path.done = true; break; } _local2.visited = true; addNode(_local2, _local2.x + 1, _local2.y, targetx, targety, _root.game[(("t_" + _local2.x) + "_") + _local2.y].tiles[1]); addNode(_local2, _local2.x - 1, _local2.y, targetx, targety, _root.game[(("t_" + _local2.x) + "_") + _local2.y].tiles[1]); addNode(_local2, _local2.x, _local2.y + 1, targetx, targety, _root.game[(("t_" + _local2.x) + "_") + _local2.y].tiles[1]); addNode(_local2, _local2.x, _local2.y - 1, targetx, targety, _root.game[(("t_" + _local2.x) + "_") + _local2.y].tiles[1]); } if (path.done) { delete path; return(true); } delete path; return(false); } function addNode(ob, x, y, targetx, targety, theheight) { path.name = (("node_" + x) + "_") + y; if ((((_root.game[(("t_" + x) + "_") + y].walkable && (x > 0)) && (y > 0)) && (x < _root.game.MAP_H)) && (y < _root.game.MAP_W)) { if (Math.abs(theheight - _root.game[(("t_" + x) + "_") + y].tiles[1]) <= 1) { if (!_root.game[(("t_" + x) + "_") + y].inuse) { if ((!_root.game[(("t_" + x) + "_") + y].seat) || ((x == targetx) && (y == targety))) { if (path[path.name].cost == undefined) { var _local3 = Math.abs(x - targetx) + Math.abs(y - targety); path[path.name] = {x:x, y:y, parentx:ob.x, parenty:ob.y, cost:_local3}; var _local2 = 0; while (_local2 < path.Unchecked_Neighbours.length) { if (_local3 < path.Unchecked_Neighbours[_local2].cost) { path.Unchecked_Neighbours.splice(_local2, 0, path[path.name]); break; } _local2++; } if (_local2 >= path.Unchecked_Neighbours.length) { path.Unchecked_Neighbours[path.Unchecked_Neighbours.length] = path[path.name]; } } } } } } } function make_path(ob) { this.the_path = []; while ((ob.parentx != null) && (ob.parentx != undefined)) { this.the_path[this.the_path.length] = [ob.x, ob.y]; ob = path[(("node_" + ob.parentx) + "_") + ob.parenty]; } } stop(); justloaded = false; time_amount = 200; if (!this.user_controlled) { walktimer = 50; } speed_reduce = 12; walking = 0; xdist = 1; ydist = 1; xspeed = (_root.game.TILE_W / 2) / (speed_reduce + 1); yspeed = (_root.game.TILE_H / 2) / (speed_reduce + 1); hspeed = _root.game.HEIGHT_INC / (speed_reduce + 1); this.direction.gotoAndStop(Math.round(Math.random() * 3) + 1); partner = undefined; action = "idle"; idle_time = 0; couldnt_get_to = []; couldnt_get_to_timer = 0; couldnt_get_to_timer_max = 900; mouseover = false; onMouseDown = function () { if (!_root.game.paused) { if (this.hitTest(_root._xmouse, _root._ymouse, true)) { if (!this.mouseover) { _root.Add_To_Array_Randomly(_root.game.mouseover, this._name); } this.mouseover = true; } else { if (this.mouseover) { _root.Delete_From_Array(_root.game.mouseover, this._name); } this.mouseover = false; } } }; onEnterFrame = function () { if (!_root.game.paused) { if (this.getDepth() == 0) { trace(("ERROR! " + _name) + " deleted."); this.removeMovieClip(); } this.char_link.text = ""; if (the_path == undefined) { the_path = []; } if (couldnt_get_to_timer < couldnt_get_to_timer_max) { couldnt_get_to_timer++; } else { couldnt_get_to_timer = 0; couldnt_get_to = []; } if ((action == "idle") || (action == "talking")) { if (!user_controlled) { if (idle_time > 0) { idle_time--; } else { SetCharAction("random"); } } } if (action == "walking") { if (((last_x != clicked_x) || (last_y != clicked_y)) && (_root.game[(("t_" + clicked_x) + "_") + clicked_y].walkable == true)) { if (!_root.game[(("t_" + clicked_x) + "_") + clicked_y].inuse) { last_x = clicked_x; last_y = clicked_y; findPath(next_x, next_y, last_x, last_y); trace("found one"); } else { clicked_x = last_x; clicked_y = last_y; trace("didnt"); } } if ((curr_x == last_x) && (curr_y == last_y)) { this.SetCharAction("idle"); } } if (action == "finding") { if (((Math.abs(_root.CurrMap[partner].next_x - clicked_x) > 1) || (Math.abs(_root.CurrMap[partner].next_y - clicked_y) > 1)) || ((Math.abs(_root.CurrMap[partner].next_x - clicked_x) + Math.abs(_root.CurrMap[partner].next_y - clicked_y)) != 1)) { dir = 1; while (dir <= 4) { if (dir == 1) { clicked_x = _root.CurrMap[partner].next_x + 1; clicked_y = _root.CurrMap[partner].next_y; } else if (dir == 2) { clicked_x = _root.CurrMap[partner].next_x - 1; clicked_y = _root.CurrMap[partner].next_y; } else if (dir == 3) { clicked_x = _root.CurrMap[partner].next_x; clicked_y = _root.CurrMap[partner].next_y + 1; } else { clicked_x = _root.CurrMap[partner].next_x; clicked_y = _root.CurrMap[partner].next_y - 1; } if (findPath(next_x, next_y, clicked_x, clicked_y) == true) { last_x = clicked_x; last_y = clicked_y; break; } if (dir == 4) { clicked_x = last_x; clicked_y = last_y; SetCharAction("random"); } dir++; } } if ((Math.abs(curr_x - _root.CurrMap[partner].curr_x) <= 1) && (Math.abs(curr_y - _root.CurrMap[partner].curr_y) <= 1)) { if ((Math.abs(curr_x - _root.CurrMap[partner].curr_x) + Math.abs(curr_y - _root.CurrMap[partner].curr_y)) == 1) { if (CheckCharOrientation(_root.CurrMap[this.partner], this)) { SetCharAction("talking"); } else { SetCharAction("random"); } clicked_x = (last_x = next_x); clicked_y = (last_y = next_y); } } } else if (action == "waiting") { clicked_x = (last_x = next_x); clicked_y = (last_y = next_y); } if ((curr_x != last_x) || (curr_y != last_y)) { if (walking < speed_reduce) { if (walking == 0) { if (the_path.length > 0) { next_x = the_path[the_path.length - 1][0]; next_y = the_path[the_path.length - 1][1]; if (_root.game[(("t_" + next_x) + "_") + next_y].inuse) { while (the_path.length > 0) { the_path.pop(); } if (findPath(curr_x, curr_y, last_x, last_y)) { next_x = the_path[the_path.length - 1][0]; next_y = the_path[the_path.length - 1][1]; } else { next_x = curr_x; next_y = curr_y; if (action == "finding") { SetCharAction("random"); } } } _root.game[(("t_" + next_x) + "_") + next_y].inuse = true; the_path.pop(); walking++; } else if (!findPath(curr_x, curr_y, last_x, last_y)) { if (action == "finding") { SetCharAction("random"); } clicked_x = (last_x = next_x); clicked_y = (last_y = next_y); } } xdist = _root.CurrMap[(("t_" + next_x) + "_") + next_y]._x - _root.CurrMap[(("t_" + curr_x) + "_") + curr_y]._x; xdist = xdist / Math.abs(xdist); ydist = _root.CurrMap[(("t_" + next_x) + "_") + next_y]._y - _root.CurrMap[(("t_" + curr_x) + "_") + curr_y]._y; ydist = ydist / Math.abs(ydist); hdist = _root.game[(("t_" + next_x) + "_") + next_y].tiles[1] - _root.game[(("t_" + curr_x) + "_") + curr_y].tiles[1]; if (hdist != 0) { hdist = hdist / Math.abs(hdist); } xdir = next_x - curr_x; ydir = next_y - curr_y; SetMoveCharDepths(); this._x = this._x + (((xspeed * walking) * xdist) + (xspeed * xdir)); this._y = this._y + ((((yspeed * walking) * ydist) + (yspeed * ydir)) - ((hspeed * walking) * hdist)); if (walking != 0) { walking++; } } else { _root.game[(("t_" + curr_x) + "_") + curr_y].inuse = false; walking = 0; curr_x = next_x; curr_y = next_y; _root.SetCharLocation(this, curr_x, curr_y); SetCharAppearance(); } } else { SetCharAppearance(); } } }; FacePartner = function () { x_dir = this.next_x - _root.CurrMap[partner].next_x; y_dir = this.next_y - _root.CurrMap[partner].next_y; if (x_dir == 1) { this.direction.gotoAndStop(3); _root.CurrMap[partner].direction.gotoAndStop(1); } if (x_dir == -1) { this.direction.gotoAndStop(1); _root.CurrMap[partner].direction.gotoAndStop(3); } if (y_dir == 1) { this.direction.gotoAndStop(2); _root.CurrMap[partner].direction.gotoAndStop(4); } if (y_dir == -1) { this.direction.gotoAndStop(4); _root.CurrMap[partner].direction.gotoAndStop(2); } }; CheckCharOrientation = function (asking, answering) { i = 0; while (i <= (asking.orientation.length - 1)) { if (answering.gender == asking.orientation[i]) { return(true); } i++; } return(false); }; SetCharAction = function (the_action) { if (the_action == "random") { if (this.partner != undefined) { _root.CurrMap[this.partner].SetCharAction("idle"); this.reactions.gotoAndStop(1); } actions = ["idle", "walking"]; if (talkative > 30) { actions[actions.length] = "talkative"; } the_action = _root.Select_Randomly_From_Array(actions); } if (the_action == "walking") { if (!user_controlled) { clicked_x = Math.round(Math.random() * (_root.game.MAP_H - 1)) + 1; clicked_y = Math.round(Math.random() * (_root.game.MAP_W - 1)) + 1; } if ((!_root.game[(("t_" + clicked_x) + "_") + clicked_y].walkable) || (_root.game[(("t_" + clicked_x) + "_") + clicked_y].inuse)) { clicked_x = next_x; clicked_y = next_y; the_action = "idle"; } else { last_x = clicked_x; last_y = clicked_y; this.action = "walking"; } } if (the_action == "idle") { this.idle_time = Math.round(_root.Get_Percentage() / 2) + 10; if (this.partner != undefined) { if (!user_controlled) { _root.Add_To_Array_Randomly(_root.game.interested, _root.CurrMap[this.partner]._name); } _root.CurrMap[partner].action = the_action; _root.CurrMap[partner].reactions.gotoAndStop(1); _root.CurrMap[partner].partner = undefined; } if (!user_controlled) { _root.Add_To_Array_Randomly(_root.game.interested, this._name); } this.action = the_action; this.reactions.gotoAndStop(1); this.partner = undefined; } if (the_action == "talkative") { if (CheckForPartners()) { _root.CurrMap[partner].partner = _name; couldnt_get_to.push(_root.CurrMap[partner]._name); _root.Delete_From_Array(_root.game.interested, _name); _root.Delete_From_Array(_root.game.interested, this.partner); if (outgoing > _root.CurrMap[partner].outgoing) { this.action = "finding"; _root.CurrMap[partner].action = "waiting"; } else { this.action = "waiting"; _root.CurrMap[partner].action = "finding"; } } else { this.action = "idle"; return(undefined); } } if (the_action == "talking") { this.idle_time = Math.round(_root.Get_Percentage()) + 500; this.action = "talking"; this.reactions.gotoAndStop(4); _root.CurrMap[partner].action = "talking"; _root.CurrMap[partner].idle_time = this.idle_time; _root.CurrMap[partner].reactions.gotoAndStop(4); FacePartner(); } }; CheckForPartners = function () { finding_tries = 0; while (true) { if (finding_tries < 20) { this.partner = _root.Select_Randomly_From_Array(_root.game.interested); if (((this.partner != _name) && (!_root.Is_In_Array(couldnt_get_to, partner))) && (CheckCharOrientation(this, _root.CurrMap[this.partner]))) { return(true); } finding_tries++; continue; } this.partner = undefined; return(false); } }; SetCharAppearance = function () { if ((_root.game[(("t_" + curr_x) + "_") + curr_y].seat && (_root.game[(("t_" + curr_x) + "_") + curr_y].seatdir != undefined)) && (_root.game[(("t_" + curr_x) + "_") + curr_y].seatdir != 0)) { this.direction.gotoAndStop(_root.game[(("t_" + curr_x) + "_") + curr_y].seatdir); } }; SetCharAppearance(); SetCharStats = function () { if (!this.user_controlled) { this.gender = _root.Get_Percentage(); if (gender > 60) { this.gender = "M"; this.name = _root.M_First_Names[Math.round(Math.random() * (_root.M_First_Names.length - 1))]; this.gotoAndStop(1); } else if (gender > 20) { this.gender = "F"; this.name = _root.F_First_Names[Math.round(Math.random() * (_root.F_First_Names.length - 1))]; this.gotoAndStop(2); } else { this.gender = "H"; if (Math.round(Math.random())) { this.name = _root.M_First_Names[Math.round(Math.random() * (_root.M_First_Names.length - 1))]; } else { this.name = _root.F_First_Names[Math.round(Math.random() * (_root.F_First_Names.length - 1))]; } this.gotoAndStop(3); } this.orientation = ["M", "F", "H"]; if (_root.Get_Percentage() > 40) { this.orientation.splice(2); } if (_root.Get_Percentage() > 60) { this.orientation = [this.orientation[Math.round(Math.random())]]; } this.dom = _root.Get_Percentage(); this.sub = 100 - this.dom; this.stamina = _root.Get_Percentage(); this.energy = Math.round(_root.Get_Percentage() / 2) + 50; this.arrousal = _root.Get_Percentage(); this.hunger = _root.Get_Percentage(); this.appeal = _root.Get_Percentage(); this.hygene = Math.round(_root.Get_Percentage() / 4) + 75; this.experience = _root.Get_Percentage(); this.outgoing = _root.Get_Percentage(); this.talkative = _root.Get_Percentage(); } else { this.gotoAndStop(4); } }; SetCharStats(); SetMoveCharDepths = function () { _root.SetCharLocation(this, curr_x, curr_y); if ((xdir == 1) || (ydir == 1)) { _root.SetCharDepth(this, curr_x + xdir, curr_y + ydir); } else if ((xdir == -1) || (ydir == -1)) { _root.SetCharDepth(this, curr_x, curr_y); } };Symbol 70 Buttonon (release) { gotoAndStop (1); }Symbol 73 MovieClip [windows] Frame 1stop(); _root.game.paused = false;Symbol 73 MovieClip [windows] Frame 2_root.game.paused = true; scroll_pause = 20; scroll_pause_max = 40; scroll_level = 0; scroll_level_max = 50; the_y = this.description._y; _root.CurrMap.char.clicked_x = _root.CurrMap.char.next_x; _root.CurrMap.char.clicked_y = _root.CurrMap.char.next_y; _root.CurrMap.char.last_x = _root.CurrMap.char.next_x; _root.CurrMap.char.last_y = _root.CurrMap.char.next_y; _root.CurrMap.char.SetCharAction("idle"); onEnterFrame = function () { the_char = _root.CurrMap[_root.game.selected_char]; this.description.text = ""; this.description.text = this.description.text + (("Name:\t" + the_char.name) + newline); this.description.text = this.description.text + (("Gender:\t" + the_char.gender) + newline); this.description.text = this.description.text + (("Orientation:\t" + the_char.orientation) + newline); this.description.text = this.description.text + "= = = = = Stats = = = = =\n"; this.description.text = this.description.text + ((" Energy:\t\t" + the_char.energy) + "/100\n"); this.description.text = this.description.text + ((" Arrousal:\t\t" + the_char.arrousal) + "/100\n"); this.description.text = this.description.text + ((" Experience:\t" + the_char.experience) + "/100\n"); this.description.text = this.description.text + ((" Talkative:\t\t" + the_char.talkative) + "/100\n"); this.description.text = this.description.text + ((" Outgoing:\t\t" + the_char.outgoing) + "/100\n"); this.description.text = this.description.text + ((" Hunger:\t\t" + the_char.hunger) + "/100\n"); this.description.text = this.description.text + ((" Hygene:\t\t" + the_char.hygene) + "/100\n"); if (scroll_pause < scroll_pause_max) { scroll_pause++; } else if (scroll_level >= scroll_level_max) { if (this.description.scroll < this.description.maxscroll) { this.description.scroll++; if (this.description.scroll == this.description.maxscroll) { scroll_pause = 0; } } this.description._y = the_y; scroll_level = 0; } else { if (this.description.scroll == this.description.maxscroll) { this.description.scroll = 0; } scroll_level++; this.description._y = the_y - ((scroll_level / scroll_level_max) * 15); } };
Library Items
Symbol 1 Graphic | Used by:13 | |
Symbol 2 Graphic | Used by:13 | |
Symbol 3 Graphic | Used by:13 | |
Symbol 4 Graphic | Used by:13 | |
Symbol 5 Graphic | Used by:13 | |
Symbol 6 Graphic | Used by:13 | |
Symbol 7 Graphic | Used by:13 | |
Symbol 8 Graphic | Used by:13 | |
Symbol 9 Graphic | Used by:13 | |
Symbol 10 Graphic | Used by:13 | |
Symbol 11 Graphic | Used by:13 | |
Symbol 12 Graphic | Used by:13 | |
Symbol 13 MovieClip [walls] | Uses:1 2 3 4 5 6 7 8 9 10 11 12 | |
Symbol 14 Graphic | Used by:31 | |
Symbol 15 Graphic | Used by:31 | |
Symbol 16 Graphic | Used by:31 | |
Symbol 17 Graphic | Used by:31 | |
Symbol 18 Graphic | Used by:31 | |
Symbol 19 Graphic | Used by:31 | |
Symbol 20 Graphic | Used by:31 | |
Symbol 21 Graphic | Used by:31 | |
Symbol 22 Graphic | Used by:31 | |
Symbol 23 Graphic | Used by:31 | |
Symbol 24 Graphic | Used by:31 | |
Symbol 25 Graphic | Used by:31 | |
Symbol 26 Graphic | Used by:31 | |
Symbol 27 Graphic | Used by:31 | |
Symbol 28 Graphic | Used by:31 | |
Symbol 29 Graphic | Used by:31 | |
Symbol 30 Graphic | Used by:31 | |
Symbol 31 MovieClip [furniture] | Uses:14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | |
Symbol 32 Graphic | Used by:33 | |
Symbol 33 MovieClip [select] | Uses:32 | |
Symbol 34 Graphic | Used by:50 | |
Symbol 35 Graphic | Used by:50 | |
Symbol 36 Graphic | Used by:50 | |
Symbol 37 Graphic | Used by:50 | |
Symbol 38 Graphic | Used by:50 | |
Symbol 39 Graphic | Used by:50 | |
Symbol 40 Graphic | Used by:50 | |
Symbol 41 Graphic | Used by:50 | |
Symbol 42 Graphic | Used by:50 | |
Symbol 43 Graphic | Used by:50 | |
Symbol 44 Graphic | Used by:50 | |
Symbol 45 Graphic | Used by:50 | |
Symbol 46 Graphic | Used by:50 | |
Symbol 47 Graphic | Used by:50 | |
Symbol 48 Graphic | Used by:50 | |
Symbol 49 Graphic | Used by:50 | |
Symbol 50 MovieClip [floors] | Uses:34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | |
Symbol 51 Graphic | Used by:55 | |
Symbol 52 Graphic | Used by:55 | |
Symbol 53 Graphic | Used by:55 | |
Symbol 54 Graphic | Used by:55 | |
Symbol 55 MovieClip | Uses:51 52 53 54 | Used by:61 |
Symbol 56 Graphic | Used by:60 | |
Symbol 57 Graphic | Used by:60 | |
Symbol 58 Graphic | Used by:60 | |
Symbol 59 Graphic | Used by:60 | |
Symbol 60 MovieClip | Uses:56 57 58 59 | Used by:61 |
Symbol 61 MovieClip [characters] | Uses:55 60 | |
Symbol 62 Graphic | Used by:73 | |
Symbol 63 Font | Used by:64 66 75 76 | |
Symbol 64 EditableText | Uses:63 | Used by:73 |
Symbol 65 Graphic | Used by:70 | |
Symbol 66 Text | Uses:63 | Used by:70 |
Symbol 67 Graphic | Used by:70 | |
Symbol 68 Graphic | Used by:70 | |
Symbol 69 Graphic | Used by:70 | |
Symbol 70 Button | Uses:65 66 67 68 69 | Used by:73 |
Symbol 71 Font | Used by:72 | |
Symbol 72 Text | Uses:71 | Used by:73 |
Symbol 73 MovieClip [windows] | Uses:62 64 70 72 | |
Symbol 74 Graphic | Used by:Timeline | |
Symbol 75 Text | Uses:63 | Used by:Timeline |
Symbol 76 EditableText | Uses:63 | Used by:Timeline |
Instance Names
"fps" | Frame 1 | Symbol 76 EditableText |
"direction" | Symbol 61 MovieClip [characters] Frame 1 | Symbol 55 MovieClip |
"reactions" | Symbol 61 MovieClip [characters] Frame 1 | Symbol 60 MovieClip |
"description" | Symbol 73 MovieClip [windows] Frame 2 | Symbol 64 EditableText |
Special Tags
FileAttributes (69) | Timeline Frame 1 | Access local files only, Metadata not present, AS1/AS2. |
ExportAssets (56) | Timeline Frame 1 | Symbol 13 as "walls" |
ExportAssets (56) | Timeline Frame 1 | Symbol 31 as "furniture" |
ExportAssets (56) | Timeline Frame 1 | Symbol 33 as "select" |
ExportAssets (56) | Timeline Frame 1 | Symbol 50 as "floors" |
ExportAssets (56) | Timeline Frame 1 | Symbol 61 as "characters" |
ExportAssets (56) | Timeline Frame 1 | Symbol 73 as "windows" |
Labels
"railing_0008" | Symbol 31 MovieClip [furniture] Frame 1 |
"railing_0007" | Symbol 31 MovieClip [furniture] Frame 2 |
"railing_0002" | Symbol 31 MovieClip [furniture] Frame 3 |
"railing_0001" | Symbol 31 MovieClip [furniture] Frame 4 |
"railing_0004" | Symbol 31 MovieClip [furniture] Frame 6 |
"railing_0005" | Symbol 31 MovieClip [furniture] Frame 7 |
"railing_0016" | Symbol 31 MovieClip [furniture] Frame 8 |
"railing_0013" | Symbol 31 MovieClip [furniture] Frame 9 |
"railing_0014" | Symbol 31 MovieClip [furniture] Frame 10 |
|