目录结构调整

This commit is contained in:
2026-02-04 23:47:45 +08:00
parent 6938c911c3
commit 6b22238c6e
8780 changed files with 15333 additions and 574 deletions

View File

@@ -0,0 +1,670 @@
/*
默认动画:
放大缩小 zoom 参数:目标倍数,时间(不是秒,是一个值,自己调一调)
旋转 rotate 参数:目标倍数,时间(不是秒,是一个值,自己调一调)
定向移动 move 参数:方向,距离,时间(不是秒,是一个值,自己调一调)
定点移动 moveTo 参数:目标位置[100,100],时间(不是秒,是一个值,自己调一调)
是否正在播放
if (!AM.is_play(5)) {
同时播放:边放大,边旋转
放大到200
AM.add(5).bfunc(function(){
该链式动画开始之前执行
}).zoom(200,35).func(function(){
该链式动画完成时执行此时不能再次执行同一ID的动画
}).start();
同时旋转30度
AM.new(5).bfunc(function(){
该链式动画开始之前执行
}).rotate(get_self(5,34)+30,30).func(function(){
该链式动画完成时执行此时不能再次执行同一ID的动画
}).start();
}
是否正在播放
if (!AM.is_play(5)) {
逐步播放先放大到200然后旋转30度
先放大到200然后旋转30度
AM.add(5).bfunc(function(){
该链式动画开始之前执行
}).zoom(200,35).rotate(get_self(5,34)+30,30).func(function(){
该链式动画完成时执行此时不能再次执行同一ID的动画
}).start();
};
清除所有动画
AM.clear() 一个参数:
默认为false,会直接变为理想状态
true :回到未执行完的动画的初始状态。
AM.remove() 两个参数:
id:清除某ID的动画
默认为false,会直接变为理想状态
true :回到未执行完的动画的初始状态。
*/
function HAnimation(desc) {
this.desc = desc || "";
var item = [];//动画序列
var playID = [];//l
var deploy = 0;//延迟
var id = 0,
duration = 0;
var king = {};
var currentPlay = null;
var currentP = [];
var pos = [];
var opos = [];
var self = this;
self.isPlaying = 0;
var toO = false;
var toend = false;
var repp = false;
var func = function () {
};
var bfunc = function () {
};
var result = {}
//var one_by_one={
//id:0,
//item:[],
//currentPlay:null,
//isPlaying:0,
//pos:[],
//opos:[],
//toO:false,
//repp:false,
//func:function(){},
//}
this.register = function (obj) {
if (self.isPlaying == 1) {
//console.log("该动画已经在运行了");
return king;
}
id = obj;
pos = [];
opos = [];
currentPlay = null;
currentP = [];
self.isPlaying = 0;
pos = [get_self(id, 18, 0, 0), get_self(id, 19, 0, 0)];
opos = [get_self(id, 18, 0, 0), get_self(id, 19, 0, 0)];
return king;
};
king.bfunc = function (funcc) {
bfunc = funcc || bfunc;
return king;
};
king.func = function (funcc) {
func = funcc || func;
return king;
};
king.repeat = function (self) {
if (self == 0) {
stop();
}
repp = true;
return king;
};
this.set_end = function (end) {
toend = end;
}
this.set_toO = function (O) {
toO = O;
};
king.set_end = function (end) {
toend = end;
};
king.set_toO = function (O) {
toO = O;
};
//预设动画:左移,右移,上移,下移,定向移动
king.wait = function (time, func) {
var tim = time || 0;
var func = func || function () {
};
var otime = tim;
var piecea = function (otime) {
if (time == 0) {
time = otime;
func();
return 2;
}
time = time - 1;
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: piecea, pos: pos}
return king;
}
king.path = function (mpos, time, func) {
result[18] = mpos[0]
result[19] = mpos[1]
var pp = Math.abs(pos[1] - mpos[1]) / time;
console.log(pos[1], mpos[1], time, pp)
var path = function (mpos) {
var A = new Point(pos[0], pos[1]);
var B = new Point(mpos[0], mpos[1]);
if (get_self(id, 18) < mpos[0]) {
set_self(id, 18, pp, 1, 0);
} else if (get_self(id, 18) > mpos[0]) {
set_self(id, 18, pp, 2, 0);
}
var y;
if (B.x == A.x) {
var y = B.y;
} else {
y = func(A, B, get_self(id, 18));
}
set_self(id, 19, y, 0, 0);
// get_self(id, 18, 0, 0)==mpos[0]&&get_self(id, 19, 0, 0)==mpos[1]
if (Math.abs(get_self(id, 18, 0, 0) - mpos[0]) < 10 && Math.abs(get_self(id, 19, 0, 0) - mpos[1]) < 10) {
set_self(id, 18, mpos[0], 0, 0);
set_self(id, 19, mpos[1], 0, 0);
return 2;
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: path, pos: pos}
return king;
}
king.moveTo = function (mpos, time) {
var pp;
if (pos[0] != mpos[0]) {
pp = Math.abs(pos[0] - mpos[0]) / time;
} else {
pp = Math.abs(pos[1] - mpos[1]) / time;
}
result[18] = mpos[0]
result[19] = mpos[1]
var moveTo = function (mpos) {
var A = new Point(pos[0], pos[1]);
var B = new Point(mpos[0], mpos[1]);
if ((B.y - A.y) == 0 && (B.x - A.x) == 0) {
return 2;
}
if (get_self(id, 18) < mpos[0]) {
set_self(id, 18, pp, 1, 0);
} else if (get_self(id, 18) > mpos[0]) {
set_self(id, 18, pp, 2, 0);
}
var y;
if (B.x == A.x) {
var y = B.y;
} else {
y = (B.y - A.y) / (B.x - A.x) * (get_self(id, 18, 0, 0) - A.x) + A.y;
}
set_self(id, 19, y, 0, 0);
//if (get_self(id,19)<mpos[1]) {
////console.log("MOVETO"+get_self(id,19));
//set_self(id, 19,1, 1, 0);
//}else if (get_self(id,19)>mpos[1]){
////console.log("MOVETO"+get_self(id,19));
//set_self(id, 19,1, 2, 0);
//}
if (Math.abs(get_self(id, 18, 0, 0) - mpos[0]) < 10 && Math.abs(get_self(id, 19, 0, 0) - mpos[1]) < 10) {
//console.log("MOVETO",mpos[0],mpos[1]);
set_self(id, 18, mpos[0], 0, 0);
set_self(id, 19, mpos[1], 0, 0);
return 2;
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: moveTo, pos: pos}
return king;
}
king.move = function (type, mile, time) {
if (type == 'right') {
result[18] = pos[0] + mile
} else if (type == 'left') {
result[18] = pos[0] - mile
} else if (type == 'up') {
result[19] = pos[1] - mile
} else if (type == 'down') {
result[19] = pos[1] + mile
}
var pp = mile / time;
var moveGo = function (type, mile) {
////console.log(type);
if (type == 'right') {
set_self(id, 18, pp, 1, 0);
if ((get_self(id, 18, 0, 0) - pos[0]) >= mile) {
pos[0] = pos[0] + mile;//-get_self(id, 20, 0, 0);
set_self(id, 18, pos[0], 0, 0);
//console.log('right'+id);
return 2;
}
} else if (type == 'left') {
set_self(id, 18, pp, 2, 0);
if ((pos[0] - get_self(id, 18, 0, 0)) >= mile) {
pos[0] = pos[0] - mile;
//console.log('left'+id);
set_self(id, 18, pos[0], 0, 0);
return 2;
}
} else if (type == 'up') {
set_self(id, 19, pp, 2, 0);
if ((pos[1] - get_self(id, 19, 0, 0)) >= mile) {
pos[1] = pos[1] - mile;
set_self(id, 19, pos[1], 0, 0);
//console.log('up'+id);
return 2;
}
} else if (type == 'down') {
set_self(id, 19, pp, 1, 0);
if ((get_self(id, 19, 0, 0) - pos[1]) >= mile) {
pos[1] = pos[1] + mile;
set_self(id, 19, pos[1], 0, 0);
//console.log('down'+id);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: moveGo, pos: pos}
return king;
}
king.zoom = function (beishu, time) {
//console.log("zoomBB");
var pp;
console.log(beishu)
if (beishu < 0) {
pp = -beishu / time;
} else {
pp = beishu / time;
}
result[33] = beishu
var zoom = function (beishu) {
//console.log(beishu);
if (beishu >= get_self(id, 33, 0, 0)) {
set_self(id, 33, pp, 1, 0);
if (get_self(id, 33, 0, 0) >= beishu) {
//console.log("zoomBB");
set_self(id, 33, beishu, 0, 0);
return 2;
}
} else {
set_self(id, 33, pp, 2, 0);
if (get_self(id, 33, 0, 0) <= beishu) {
//console.log("zoomSS");
set_self(id, 33, beishu, 0, 0);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: zoom, pos: pos}
return king;
}
king.rotate = function (beishu, time) {
//console.log("rotateAA");
var pp;
if (beishu < 0) {
pp = -beishu / time;
} else if (beishu > 0) {
pp = beishu / time;
} else {
pp = (0 - get_self(id, 34, 0, 0)) / time;
}
result[34] = beishu
var rotate = function (beishu) {
if (beishu >= get_self(id, 34, 0, 0)) {
set_self(id, 34, pp, 1, 0);
if (get_self(id, 34, 0, 0) >= beishu) {
//console.log("rotateAA");
set_self(id, 34, beishu, 0, 0);
return 2;
}
} else {
set_self(id, 34, pp, 2, 0);
if (Math.abs(get_self(id, 34, 0, 0)) >= Math.abs(beishu)) {
//console.log("rotateBB",get_self(id,34,0,0),beishu);
set_self(id, 34, beishu, 0, 0);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: rotate, pos: pos}
return king;
}
king.alpha = function (beishu, time) {
//console.log("rotateAA");
var pp;
var last = result[35] || 255
if (result[35] != undefined && result[35] == 0) {
last = 0;
}
pp = Math.abs(last - beishu) / time;
console.log("pppp", last)
result[35] = beishu
var alpha = function (beishu) {
if (beishu >= get_self(id, 35, 0, 0)) {
set_self(id, 35, pp, 1, 0);
if (get_self(id, 35, 0, 0) >= beishu) {
//console.log("rotateAA");
set_self(id, 35, beishu, 0, 0);
return 2;
}
} else {
set_self(id, 35, pp, 2, 0);
if (get_self(id, 35, 0, 0) <= beishu) {
//console.log("rotateBB",get_self(id,34,0,0),beishu);
set_self(id, 35, beishu, 0, 0);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: alpha, pos: pos}
return king;
}
king.start = function (open) {
if (item.length == 0) {
return
}
//set_self(id,18,opos[0],0,0);
//set_self(id,19,opos[1],0,0);
//set_self(id,34,0,0,0);
//set_self(id,33,100,0,0);
currentPlay = null;
self.isPlaying = 1;
bfunc();
set_self(id, 57, 1, 0, 0);//开启定时器
}
this.start = function (open) {
if (item.length == 0) {
return
}
//set_self(id,18,opos[0],0,0);
//set_self(id,19,opos[1],0,0);
//set_self(id,34,0,0,0);
//set_self(id,33,100,0,0);
currentPlay = null;
self.isPlaying = 1;
bfunc();
set_self(id, 57, 1, 0, 0);//开启定时器
}
var stop = function () {
if (toO) {
set_self(id, 18, opos[0], 0, 0);
set_self(id, 19, opos[1], 0, 0);
set_self(id, 34, 0, 0, 0);
set_self(id, 33, 100, 0, 0);
}
currentPlay = null;
self.isPlaying = 0;
item = [];
}
this.show = function () {
//console.log(item);
}
this.end = function (O) {
toO = O;
if (O == undefined) {
toO = false;
}
for (var key in result) {
set_self(id, parseInt(key), parseInt(result[key]), 0, 0);
//console.log("id=="+id+" key:"+key+",desc:"+result[key]);
}
stop();
func();
}
this.ontimer = function (gameid, spid) {
if (spid != id) {
return;
}
if (toend) {
if (toO) {
} else {
if (item.length != 0) {
for (var key in result) {
set_self(id, parseInt(key), parseInt(result[key]), 0, 0);
//console.log("id=="+id+" key:"+key+",desc:"+result[key]);
}
//console.log(result)
}
}
stop();
func();
}
if (item.length == 0) {
return;
}
if (currentPlay == null) {
currentPlay = item[0];
currentPlay.state = 1;
}
if (currentPlay.state == 2) {//播放结束
if (currentPlay.id < item.length - 1) {
currentPlay = item[currentPlay.id + 1];
currentPlay.state = 1;
} else {
if (repp == false) {
////console.log(item);
//console.log("执行结果:");
stop();
func();
return;
} else {
if (toO) {
set_self(id, 18, opos[0], 0, 0);
set_self(id, 19, opos[1], 0, 0);
set_self(id, 34, 0, 0, 0);
set_self(id, 33, 100, 0, 0);
}
pos = [opos[0], opos[1]];
currentPlay = item[0];
currentPlay.state = 1;
}
}
}
////console.log(spid);
if (spid == id) {
if (currentPlay.state == 1) {
var state = currentPlay.func.apply(null, currentPlay.argu);//Array.prototype.slice.call(arguments, 0));
currentPlay.state = state;
}
}
};
};
/*
*/
//var HA=app.register("Animation1",new HAnimation("1"));
//var HAn=app.register("Animation2",new HAnimation("2"));
//HA.item=[];
//HA.add=function(desc){
//HA.item.push(new HAnimation(desc))
//}
//HA.get=function(pos){
//if (!HA.item[pos]) {
//HA.item[pos]=new HAnimation("")
//}
//return HA.item[pos]
//}
function AManager() {
var self = this;
this.animantions = {};
var king = {};
this.add = function (id) {
var animation;
if (!self.animantions[id]) {
self.animantions[id] = [];
animation = new HAnimation("")
//console.log(animation)
self.animantions[id].push(animation)
}
animation = self.animantions[id][self.animantions[id].length - 1]
return animation.register(id)
}
this.new = function (id) {
animation = new HAnimation("")
self.animantions[id].push(animation)
return animation.register(id)
}
this.action = function (id) {
if (self.animantions[id]) {
animation = self.animantions[id]
for (var i = 0; i < animation.length; i++) {
animation[i].start();
}
}
}
this.get = function (id) {
if (self.animantions[id]) {
return self.animantions[id]
}
return;
//throw "该 id=="+id+" 不存在或者没有动画列表"
}
this.is_play = function (id) {
//this.get(id)
animation = this.get(id);
if (animation == undefined) {
return false;
}
for (var i = 0; i < animation.length; i++) {
if (animation[i].isPlaying == 1) {
return true;
}
}
return false;
}
this.cls_id = function (id) {
if (self.animantions[id]) {
set_self(id, 57, 0, 0, 0);
delete self.animantions[id];
}
}
this.remove = function (id, end) {
if (self.animantions[id]) {
animation = self.animantions[id];
for (var i = 0; i < animation.length; i++) {
animation[i].end(end);
}
delete self.animantions[id];
}
}
this.mremove = function (id) {
delete self.animantions[id];
}
this.clear = function (end) {
if (end == undefined) {
end = false
}
for (var anim in self.animantions) {
animation = self.animantions[anim];
for (var i = 0; i < animation.length; i++) {
animation[i].end(end);
}
}
self.animantions = {};
}
this.clear_exrepp = function (end) {
if (end == undefined) {
end = false
}
for (var anim in self.animantions) {
animation = self.animantions[anim];
not = 0;
for (var i = 0; i < animation.length; i++) {
if (animation[i].get_repeat() == true) {
not = animation;
break;
}
}
console.log(not);
if (not == 0) {
for (var i = 0; i < animation.length; i++) {
animation[i].end(end);
}
delete self.animantions[anim];
}
}
}
this.ontimer = function (gameid, spid) {
if (self.animantions[spid] == undefined) {
//if (spid!=800&&spid!=801&&spid!=802&&spid!=803&&spid!=804&&spid!=805) {
//set_self(spid, 57, 0, 0, 0);
//}
// set_self(spid, 57, 0, 0, 0);
//console.log(spid);
return;
}
animation = self.animantions[spid];
for (var i = 0; i < animation.length; i++) {
if (animation[i].isPlaying == 1) {
return;
}
}
delete self.animantions[spid];
set_self(spid, 57, 0, 0, 0);
}
this.ex = function () {
var alist = []
for (var anim in self.animantions) {
animation = self.animantions[anim];
for (var i = 0; i < animation.length; i++) {
alist.push(animation[i]);
}
}
return alist
}
}
AM = app.register_manager("AManager", new AManager());
//var AManager={
//animantions:{},
//add:function(id){
//if (!this.animantions[id]) {
//animation=new HAnimation("")
//this.animantions[id]=animation
//}else{
//this.animantions[id]
//}
//return animation
//}
//}

View File

@@ -0,0 +1,80 @@
(function(wnd) {
function Point(x,y){
this.x=x||0;
this.y=y||0;
}
window.Point=Point;
})(window);
var app=(function(){
var item={};
var manager={};
var register=function(name,KJ) {
item[name]=KJ;
return KJ;
};
var register_manager=function(name,KJ) {
manager[name]=KJ;
return KJ;
};
var remove=function (name) {
if (item[name]) {
delete item[name];
}
};
var get=function(name){
if (item[name]) {
return item[name];
}else{
return 0;
}
}
var have=function(name){
if (item[name]) {
return true;
}else{
return false;
}
}
var show=function(){
for (var key in item) {
console.log("key:"+key+",desc:"+item[key]['desc']);
}
}
var runmouse=function(func){
for (var key in item) {
if (item[key][func]) {
item[key][func].apply(item[key],Array.prototype.slice.call(arguments, 1));
}
}
for (var key in manager) {
if (manager[key]) {
if (manager[key][func]) {
manager[key][func].apply(manager[key],Array.prototype.slice.call(arguments, 1));
}
var list=manager[key].ex()
for (var i = 0; i < list.length; i++) {
if (list[i][func]) {
list[i][func].apply(list[i],Array.prototype.slice.call(arguments, 1));
}
}
}
}
//if (item[name][func]) {,name
//console.table(item[name].clickable)
//item[name][func].apply(item[name],Array.prototype.slice.call(arguments, 2));
//}
}
return {
manager:manager,
item:item,
register:register,
register_manager:register_manager,
remove:remove,
runmouse:runmouse,
get:get,
have:have,
show:show,
}
})();

View File

@@ -0,0 +1,80 @@
var Func=Func||{};
Func.set_text_adjust=function (textid,text) {
var w=String(text).length;
set_self(textid,20,30*w,0,0);
set_self(textid,7,text,0,0);
};
Func.bindFather=function(child,father,type,offset) {
var offset=offset||0;
if (type === 'bottom-mid') {
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X+width/2-child_width/2;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'left-mid'){
var height=get_self(father,21,0,0);//获取父控件高度
var Y= get_self(father,19,0,0);//获取父控件Y
var child_height=get_self(child,21,0,0);
var startpos=Y+height/2-child_height/2;
set_self(child,19,startpos+offset,0,0)
}else if(type === 'right'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X+width-child_width;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'next_right'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X+width;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'left'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'next_left'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X-child_width;
set_self(child,18,startpos-offset,0,0)
}else if (type === 'mid') {
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var height=get_self(father,21,0,0);//获取父控件高度
var Y= get_self(father,19,0,0);//获取父控件Y
var child_height=get_self(child,21,0,0);
set_self(child,18,X+width/2-child_width/2+offset,0,0)
set_self(child,19,Y+height/2-child_height/2+offset,0,0)
}
};
//-------------------------------------------------------------//
//获取一个控件的位置属性
//-------------------------------------------------------------//
function GS(spid){
var result={};
result.width=get_self(spid,20,0,0);
result.height=get_self(spid,21,0,0);
result.startX=get_self(spid,18,0,0);
result.endX=get_self(spid,18,0,0)+get_self(spid,20,0,0);
result.startY=get_self(spid,19,0,0);
result.endY=get_self(spid,19,0,0)+get_self(spid,21,0,0);
result.text=get_self(spid,7,0,0);
result.can_click=get_self(spid,41,0,0);
result.is_show=get_self(spid,37,0,0);
return result;
}

View File

@@ -0,0 +1,285 @@
//滑动
//-------------------------------------------------------------//
var SlideBar=function(desc){
this.desc=desc||"";
var btn=0,
bar=0,
text=0;
var data=[];
var oneFunc,
lastFunc;
var aline=false;
var frontValue=0;
var behindVlue=0;
this.currentValue=0;
this.currentValue_index=0;
var next_id=0;
var before_id=0;
var canclick=true;
this.init=function(obj){
btn=obj.btnId||0;
bar=obj.barId||0;
text=obj.textId||0;
next_id=obj.nextId||0;
before_id=obj.beforeId||0;
aline=obj.aline||false;
data=obj.data||[0,0];
oneFunc=obj.oneFunc||function(){return 0;};
frontValue=obj.frontValue||0;
behindVlue=obj.behindVlue||data.length-1;
var btnWidth=get_self(btn,20,0,0);
var barWidth=get_self(bar,20,0,0);
var btnHeight=get_self(btn,21,0,0);
var barHeight=get_self(bar,21,0,0);
var btnX=get_self(btn,18,0,0);
var btnY=get_self(btn,19,0,0);
var barX=get_self(bar,18,0,0);
var barY=get_self(bar,19,0,0);
var y= barY+barHeight/2-btnHeight/2;
var x= barX-btnWidth/2;
set_self(btn,18,x,0,0);
set_self(btn,19,y,0,0);
this.set_text(data[0]);
if (aline) {
//textWidth(get_self(text,7,0,0),text);
Func.bindFather(text,btn,"mid");
}
if (behindVlue>=frontValue) {
this.set_value(frontValue);
}
};
this.set_data=function(o_data){
data=o_data;
frontValue=0;
behindVlue=data.length-1;
this.set_value(this.currentValue_index);
this.currentValue=data[this.currentValue_index];
//textWidth(get_self(text,7,0,0),text);
};
this.set_text=function(ta){
var w=String(ta).length;
set_self(text,20,30*w,0,0);
set_self(text,7,ta,0,0);
}
this.get_data=function(){
return data;
}
this.hide_btn=function(){
set_self(btn,37,0,0,0);
this.can_click(false);
}
this.show_btn=function(){
if (get_self(bar,37,0,0)==1) {
set_self(btn,37,1,0,0);
}
this.can_click(true);
}
this.hide_text=function(){
set_self(text,37,0,0,0);
}
this.show_text=function(){
set_self(text,37,1,0,0);
}
this.can_click=function(click){
canclick=click;
}
this.set_limit=function(limit){
frontValue=limit.left||0;
behindVlue=limit.right||data.length-1;
if (behindVlue>=frontValue) {
this.set_value(frontValue);
//currentValue=data[frontValue];
}
}
this.set_value=function(item){
var rate=get_self(bar,20,0,0)/((data.length-1)*2);//一份的长度
var length=item*rate*2+get_self(bar,18,0,0);
set_self(btn,18,length-get_self(btn,20,0,0)/2,0,0);
oneFunc(data[item],data);
this.set_text(data[item]);
//textWidth(get_self(text,7,0,0),text);
this.currentValue=data[item];
this.currentValue_index=item;
}
this.mouseup=function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2){
if (spid_up===spid_down && spid_up===next_id&&canclick) {
var item=this.currentValue_index;
item+=1;
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {//data.length-1
item=behindVlue;
}
this.set_value(item);
}
if (spid_up===spid_down && spid_up===before_id&&canclick) {
var item=this.currentValue_index;
item-=1;
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {//data.length-1
item=behindVlue;
}
this.set_value(item);
}
if (spid_up===spid_down && spid_up===bar&&canclick) {
var ux=upx-get_self(bar,18,0,0);
var rate=get_self(bar,20,0,0)/((data.length-1)*2);//一份的长度
var item=Math.round(parseInt(ux/rate)/2);//](get_self(btn,18,0,0)+get_self(btn,20,0,0)/2)
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {//data.length-1
item=behindVlue;
}
var length=item*rate*2+get_self(bar,18,0,0);
oneFunc(data[item],data)
this.currentValue=data[item];
this.currentValue_index=item;
this.set_text(data[item]);
set_self(btn,18,length-get_self(btn,20,0,0)/2,0,0);
//oneFunc(data[item]);
if (aline) {
//textWidth(get_self(text,7,0,0),text);
Func.bindFather(text,btn,"mid");
}
}
}
this.mousemove=function(gameid, spid, downx, downy, movex,movey ,timelong,offmovex, offmovey, no1){
if ( spid===btn&&canclick) {
var rate=get_self(bar,20,0,0)/((data.length-1)*2);//一份的长度
var item=parseInt((movex-get_self(bar,18,0,0))/rate);//](get_self(btn,18,0,0)+get_self(btn,20,0,0)/2)
item=Math.round(item/2);//ceil
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {
item=behindVlue;
}
var length=item*rate*2+get_self(bar,18,0,0);
oneFunc(data[item],data);
this.currentValue=data[item];
this.currentValue_index=item;
this.set_text(data[item]);
set_self(spid,18,length-get_self(btn,20,0,0)/2,0,0);
//oneFunc(data[item]);
if (aline) {
//textWidth(get_self(text,7,0,0),text);
Func.bindFather(text,btn,"mid");
}
//这里是滑动 ---------
//var length=offmovex;
//if ((get_self(btn,18,0,0)+get_self(btn,20,0,0)/2+offmovex)<get_self(bar,18,0,0)){
//length=-get_self(btn,18,0,0)-get_self(btn,20,0,0)/2+get_self(bar,18,0,0);
//}
//if ((get_self(btn,18,0,0)+get_self(btn,20,0,0)/2+offmovex)>(get_self(bar,18,0,0)+get_self(bar,20,0,0))){
//length= -get_self(btn,18,0,0)-get_self(btn,20,0,0)/2+(get_self(bar,18,0,0)+get_self(bar,20,0,0));
//}
//var rate=(get_self(btn,18,0,0)+get_self(btn,20,0,0)/2-get_self(bar,18,0,0))/get_self(bar,20,0,0);//多少分
//oneFunc(parseInt(rate*100));
//set_self(spid,18,length,1,0);
//set_self(text,7,parseInt(rate*100),0,0);
//这里是滑动---------
}
}
};
SB=app.register("TopValue",new SlideBar(""));
SB2=app.register("TopValue2",new SlideBar(""));
SB3=app.register("TopValue3",new SlideBar(""));
//===============================
var Input=function(desc){
this.desc=desc;
this.doorid=[];
this.valueid=-1;
this.limite=[0,99999];
this.current=-1;
this.lableid=-1;
this.title='';
this.realtitle='';
this.warning='',
this.success=function(){}
this.failed=function(){}
this.init=function(obj){
this.doorid=obj.door||this.doorid;
this.valueid=obj.value||this.valueid;
this.lableid=obj.lable||this.lableid;
this.realtitle=obj.title||'';
this.warning=obj.warning||'';
this.limite=obj.limite||this.limite;
this.current=this.limite[0];
this.success=obj.success||function(){}
this.failed=obj.failed||function(){}
if (this.valueid>0) {
Func.set_text_adjust(this.valueid,this.current);
this.success(this.current);
}
this.title=this.realtitle+'('+this.limite[0]+','+this.limite[1]+')';
if (this.lableid>0) {
set_self(this.lableid,7,this.title);
}
}
}
Input.prototype.setValue=function(type){
if (this.valueid<=0) {
return;
}
switch (type){
case 0:
this.current=this.limite[0];
Func.set_text_adjust(this.valueid,this.current);
this.success(this.current);
break;
case 1:
this.current=this.limite[1];
Func.set_text_adjust(this.valueid,this.current);
this.success(this.current);
break;
}
}
Input.prototype.updateLimted=function(value){
if (this.lableid<=0||this.valueid<=0) {
return;
}
this.limite=value||this.limite;
this.title=this.realtitle+'('+this.limite[0]+','+this.limite[1]+')';
set_self(this.lableid,7,this.title);
if (this.current<this.limite[0]||this.current>this.limite[1]) {
this.current=this.limite[0];
Func.set_text_adjust(this.valueid,this.current);
}
}
Input.prototype.mouseup=function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2){
if (this.doorid.indexOf(spid_up)!=-1) {
this.openInput();
}
}
Input.prototype.openInput=function(){
var that=this;
Utl.openInputPanel(that.title,function (value) {
if (value>=that.limite[0]&&value<=that.limite[1]) {
that.current=value;
Func.set_text_adjust(that.valueid,value);
that.success(value);
Utl.closeInputPanel();
}else{
that.failed(value);
Utl.openTips(that.warning,2000)
}
})
}
sb1=app.register("In1",new Input(""));
sb2=app.register("In2",new Input(""));
sb3=app.register("In3",new Input(""));