//ティラノライダー用のクラス
//デバッグツール向けの処理が集中します。
tyrano.plugin.kag.rider = {
app : {}, //ライダー側のルート
tyrano : null,
rider_view : {},
init : function() {
//alert("init rider");
},
complete : function(TG) {
//ゲームがスタートした時にライダー側に通知する
//alert("complete!");
//riderからの起動かどうかを判定する必要あり
if (window.opener && window.opener.app) {
if(window.opener.app.config.user_config.check_debug==true){
TYRANO.kag.is_rider = true;
this.app = window.opener.app;
this.app.completeRider(TG);
}
}
},
cutTyranoTag : function(tag, pm) {
TYRANO.kag.ftag.startTag(tag, pm);
},
cutTyranoScript : function(str) {
var result = TYRANO.kag.parser.parseScenario(str);
var array_s = result.array_s;
for (var i = 0; i < array_s.length; i++) {
var tag = array_s[i];
this.app.rider_view.pushConsoleGrid("tag", tag);
this.cutTyranoTag(tag.name, tag.pm);
}
},
insertElement : function(category, file) {
var path = "./data/" + category + "/" + file;
if(category=="fgimage" || category =="image"){
var j_img = $("
×

");
(function(){
var _j_img = j_img;
var _category = category;
var _file = file;
j_img.draggable({
scroll : false,
//containment:".tyrano_base",
stop : function(e, ui) {
//j_x.html(ui.position.left);
//j_y.html(ui.position.top);
_j_img.find(".area_pos").html("x:"+ui.position.left+" y:"+ui.position.top);
//タグのプレビューがここに表示される
}
});
_j_img.find(".button_delete").click(function(){
_j_img.remove();
});
//ドラッグを出来るように
$(".tyrano_base").attr("ondragstart","");
$(".tyrano_base").append(_j_img);
})();
}else if(category =="bgimage"){
//背景画像変更
var j_new_bg = TYRANO.kag.layer.getLayer("base", "fore");
j_new_bg.css("background-image","url("+path+")");
}
},
//シナリオのラベル一覧を取得する
getScenario : function(scenario_name, call_back) {
var that = this;
var file_url = "./data/scenario/" + scenario_name;
$.loadText(file_url, function(text_str) {
var result_obj = TYRANO.kag.parser.parseScenario(text_str);
if (call_back) {
call_back(result_obj);
}
});
//ラベルの一覧を取得
//呼び出し元(riderの関数呼び出し方法)
//window.opener.myFunc();
},
//キャラクター情報を返却する
getCharaInfo:function(){
return TYRANO.kag.stat.charas;
},
//変数を取得する
getVariables : function() {
var map_variable = TYRANO.kag.variable;
var f = TYRANO.kag.stat.f;
var mp = TYRANO.kag.stat.mp;
map_variable.f = f;
map_variable.mp = mp;
return map_variable;
},
//ライダー側で変数が編集された
evalScript : function(str) {
TYRANO.kag.evalScript(str);
},
//変数値を更新します
pushVariableGrid : function() {
//更新が合ったことを通知するだけ
this.app.rider_view.updateVariable();
},
initSave:function(){
localStorage.clear();
},
//命令が実行されて、デバッグツール側にコンソールを発信する
pushConsoleLog : function(tag) {
//タグをアプリ側にプッシュします
this.app.rider_view.pushConsoleGrid("tag", tag);
}
};