本帖最后由 咸鱼羊 于 2021-10-5 17:38 编辑
在新的一天触发一个函数用于执行
或许可以用于每日签到~
var Date = Java.type("java.util.Date");
function tick(e){
var nowTime = new Date();
if(e.player.getStoreddata().get("lastRecordingTime")==null){
onNewDay(e);
}else{
var nowTimeStrings = nowTime.toString().split(" ");
//[星期,月份,天数,准确时间,时间标准(UTC/CDT……),年份]
var lastTimeStrings = (new Date(e.player.getStoreddata().get("lastRecordingTime"))).toString().split(" ");
if(nowTimeStrings[5]>lastTimeStrings[5]){
onNewDay(e);
}else if(StringExpressMonth(nowTimeStrings[1])>StringExpressMonth(lastTimeStrings[1])){
onNewDay(e);
}else if(nowTimeStrings[2]>lastTimeStrings[2]){
onNewDay(e);
}
}
e.player.getStoreddata().put("lastRecordingTime",nowTime.getTime());
}
//预留的每日触发函数,用于执行代码
function onNewDay(e){
e.player.message("今天你第一次登录"+e.player.getName());
}
function StringExpressMonth(str){
switch(str){
case "Jan":
return 1;
case "Feb":
return 2;
case "Mar":
return 3;
case "Apr":
return 4;
case "May":
return 5;
case "Jun":
return 6;
case "Jul":
return 7;
case "Aug":
return 8;
case "Sep":
return 9;
case "Oct":
return 10;
case "Nov":
return 11;
case "Dec":
return 12;
default:
return -1
}
}
|