Zum Inhalt der Seite

Thread: Fehlermeldung von japanischem Game

Eröffnet am: 08.03.2019 18:23
Letzte Reaktion: 08.03.2019 22:01
Beiträge: 2
Status: Offen
Unterforen:
- Computer & Technik




Verfasser Betreff Datum
Seite 1
 CHaoZRaY Fehlermeldung von japanischem ... 08.03.2019, 18:23
 Scales Fehlermeldung von japanischem ... 08.03.2019, 22:01
Seite 1



Von:    CHaoZRaY 08.03.2019 18:23
Betreff: Fehlermeldung von japanischem Game [Antworten]
Hallo,

ich hoffe, hier eine Lösung zu finden.
ich habe vor kurzem das japanische Game Kissx800 installiert, kann es leider nicht spielen, denn wenn ich die Story starte, erhalte ich ein Popup mit der Fehlermeldung "unmatched [ or [^ " und ich höre nur die Musik, aber der Bildschirm bleibt schwarz.

Zudem öffnet sich ein Debugfenster mit einer Menge Script.
Ich habe den Text mal kopiert und vllt. hat jemand eine Ahnung, was ich tun könnte.

Vielen Dank schon einmal im Voraus, falls mir jmd. helfen kann.

MfG Ray

Anbei der Text aus dem Debugfenster:



//==============================================================
// TMessage
//==============================================================
var DefaultMessageSize=6;
var DefaultMessageColor=0xffffff;
var DefaultMessageShadowColor=0x000000;
var DefaultMessageWait=100;
var DefaultMessageSizeStep=4;
var DefaultMessageLineHeight=(int)(DefaultMessageSize*1.0)*DefaultMessageSizeStep;
var DefaultMessageLinePitch=4;

class TMessage{

var PNone=0,PTick=1,PTimeWait=2,PKeyWait=3;
var ModeWindow=0,ModeNovel=1;

// kazuT:ƒƒbƒZ[ƒEƒBƒ“ƒhƒEFƒtƒ@ƒCƒ‹–¼•ÏXE’ljÁ
var FileMessageWindow="messagewindow1";
var FileMessageWindow2="messagewindow2";
var FileMessageWindow3="messagewindow3";

var FileNameWindowLeft="namewindow_l";
var FileNameWindowRight="namewindow_r";
var FileNameWindowCenter="namewindow_c";
var FileMessageKeyWait="messagekeywait";

var owner;
var phase;
var mode;
var layer,layerFrame,layerName,layerNameLeft,layerNameRight,layerNameCenter,layerString,layerKeyWait;
var mstrings;
var waitTime,autoTime;
var flagKeyWait,countKeyWait;
var flagWaitAnime;
var flagReset;

var visible;
var hide;
var fadeAlpha;

//--------------------------------------------------------------
// Constructor
//--------------------------------------------------------------
function TMessage(owner){

this.owner=owner;
layer=owner.layerMessage;
layer.visible=false;

layerFrame=new TLayer(tWindow,layer);

// kazuT:ƒƒbƒZ[ƒW‰æ‘œA“§‰ß—¦Ý’è
updateImages();
// layerFrame.loadImages(FileMessageWindow);

layerFrame.setSizeToImageSize();
layerFrame.setPos(tSettings.messageWindowLeft,tSettings.messageWindowTop);
layerFrame.visible=false;

layerName=new TLayer(tWindow,layer);
layerName.setPos(tSettings.nameWindowLeft,tSettings.nameWindowTop);
layerName.visible=false;

layerNameLeft=new TLayer(tWindow,layer);
layerNameLeft.loadImages(FileNameWindowLeft);
layerNameLeft.setSizeToImageSize();
layerNameRight=new TLayer(tWindow,layer);
layerNameRight.loadImages(FileNameWindowRight);
layerNameRight.setSizeToImageSize();
layerNameCenter=new TLayer(tWindow,layer);
layerNameCenter.loadImages(FileNameWindowCenter);
layerNameCenter.setSizeToImageSize();

layerString=new TLayer(tWindow,layer);
layerString.setPos(0,0,layer.width,layer.height);
mstrings=new TMStrings(layerString);
layerKeyWait=new TLayer(tWindow,layer);
layerKeyWait.loadImages(FileMessageKeyWait);
layerKeyWait.setPos(0,0,layerKeyWait.imageWidth\tSettings.pageWaitDivition,layerKeyWait.imageHeight); //š2012.11.13ƒL[‘Ò‚¿ƒAƒCƒRƒ“‚̃JƒXƒ^ƒ}ƒCƒYî•ñ‚ðŠO‚ÉŽ‚‚悤‚ɕύX

layerString.visible=true;

// kazuT:ƒƒbƒZ[ƒWƒtƒHƒ“ƒgÝ’è
updateFont();
// layerString.font.face="‚l‚r ƒSƒVƒbƒN";

setMode(ModeWindow);
phase=PNone;
tLocalData.setScriptMessageVisible(visible=false);
hide=false;
fadeAlpha=0;
}

//--------------------------------------------------------------
// Destructor
//--------------------------------------------------------------
function finalize(){
}


//--------------------------------------------------------------
// kazuT:’ljÁ:ƒEƒBƒ“ƒhƒE‚̍XV
//--------------------------------------------------------------
function updateImages()
{
updateFrameImage();
updateFrameAlpha();
}

//--------------------------------------------------------------
// kazuT:’ljÁ:ƒEƒBƒ“ƒhƒE“§‰ß—¦‚̍XV
//--------------------------------------------------------------
function updateFrameAlpha()
{
layerFrame.opacity = tGlobalData.data.environment.windowAlpha;
}
//--------------------------------------------------------------
// kazuT:’ljÁ:ƒEƒBƒ“ƒhƒE‰æ‘œ‚̍XV
//--------------------------------------------------------------
function updateFrameImage()
{
switch( tGlobalData.data.environment.windowColor ) {
case 0: layerFrame.loadImages(FileMessageWindow); break;
case 1: layerFrame.loadImages(FileMessageWindow2); break;
case 2: layerFrame.loadImages(FileMessageWindow3); break;
}
}

//--------------------------------------------------------------
// kazuT:’ljÁ:ƒtƒHƒ“ƒg‚̍XV
//--------------------------------------------------------------
function updateFont()
{
layerString.font.face = tGlobalData.data.environment.font ? "‚l‚r –¾’©" : "‚l‚r ƒSƒVƒbƒN";
}


//--------------------------------------------------------------
// ƒXƒe[ƒ^ƒX
//--------------------------------------------------------------

//--------------------------------------------------------------
// ƒƒbƒZ[ƒW
//--------------------------------------------------------------
function setMessage(message,keywait=true,anime=true){

mstrings.setString(message);
phase=PTick;
waitTime=0;
flagKeyWait=keywait;
flagWaitAnime=anime;
flagReset=false;
stopWaitAnime();
showName();
tLocalData.setScriptMessageWait(flagKeyWait);
}

function getMessage(){
return mstrings.getString();
}

function clearMessage(){
stopWaitAnime();
mstrings.resetLocation();
layerString.fillRect(0,0,layerString.width,layerString.height,0);
phase=PNone;
tScript.script.nowMessage="";
}

//--------------------------------------------------------------
// –¼‘O
//--------------------------------------------------------------
function showName(){
if(mstrings.mstrings[0].name){
var left=tSettings.nameWindowLeft+tSettings.nameOffsetLeft;
var top=tSettings.nameWindowTop+tSettings.nameOffsetTop;
var width=mstrings.nameWidth;
layerName.setSize(layerNameLeft.imageWidth+width+layerNameRight.imageWidth,layerNameCenter.imageHeight);
layerName.copyRect(0,0,layerNameLeft,0,0,layerNameLeft.imageWidth,layerNameLeft.imageHeight);
layerName.stretchCopy(layerNameLeft.imageWidth,0,width,layerNameCenter.imageHeight,layerNameCenter,0,0,layerNameLeft.imageWidth​,layerNameLeft.imageHeight);
layerName.copyRect(layerNameLeft.imageWidth+width,0,layerNameRight,0,0,layerNameRight.imageWidth,layerNameRight.imageHeight);
layerName.visible=true;
}else{
layerName.visible=false;
}
}

//--------------------------------------------------------------
// tick
//--------------------------------------------------------------
function tick(flash=false){

if(fadeAlpha>0){
if((layer.opacity+=fadeAlpha)>=255){
layer.opacity=255;
fadeAlpha=0;
}else{
return;
}
}
if(fadeAlpha<0){
if((layer.opacity+=fadeAlpha)<=0){
layer.opacity=0;
fadeAlpha=0;
layer.visible=false;
}else{
return;
}
}

switch(phase){
case PNone:
break;
case PTick:
tickMessage(flash);
break;
case PTimeWait:
if(waitTime<=System.getTickCount()||tScript.isNext()){
phase=PTick;
}
break;
case PKeyWait:
if(tGameSystem.isAuto()&&autoTime<=System.getTickCount()&&!tSound.isPlayVoice()){
endKeyWait();
}else{
waitAnime();
}
break;
}
}

//--------------------------------------------------------------
// ƒƒbƒZ[ƒWo—Í
//--------------------------------------------------------------
function tickMessage(flash){
do{
if(mstrings.isPutCharacter()){
var result=mstrings.putCharacter();
if(result&0x8000000000000000){
if(!tGameSystem.isSkip()&&!tScript.isNext()){
if(flagWaitAnime){
startWaitAnime();
}
autoTime=(ConfigAutoSpeedMax-tGlobalData.data.environment.autoSpeed)*20+System.getTickCount();
phase=PKeyWait;
}else if(!mstrings.isPutCharacter()){
if(flagReset){
clearMessage();
flagReset=false;
}
phase=PNone;
}
break;
}else if(result&0x4000000000000000){
// if(flash||tGameSystem.isSkip()||tScript.isNext()){
if(tGameSystem.isSkip()||tScript.isNext()){
clearMessage();
}else{
flagReset=true;
}
}else{
if(!flash&&!tGameSystem.isSkip()&&!tScript.isNext()&&(ConfigMessageSpeedMax-tGlobalData.data.environment.messageSpeed)>0){
waitTime=result*(ConfigMessageSpeedMax-tGlobalData.data.environment.messageSpeed)\100+System.getTickCount();
phase=PTimeWait;
break;
}
}
}else{
if(flagKeyWait&&!tGameSystem.isSkip()&&!tScript.isNext()){
if(flagWaitAnime){
startWaitAnime();
}
autoTime=(ConfigAutoSpeedMax-tGlobalData.data.environment.autoSpeed)*20+System.getTickCount();
phase=PKeyWait;
break;
}else{
phase=PNone;
break;
}
}
}while(flash||tGameSystem.isSkip()||tScript.isNext()||(ConfigMessageSpeedMax-tGlobalData.data.environment.messageSpeed)==0);
}

function flashMessage(){
if(phase==PTick||phase==PTimeWait){
tickMessage(true);
}
}

//--------------------------------------------------------------
// ƒL[‘Ò‚¿I—¹
//--------------------------------------------------------------
function endKeyWait(){
if(phase==PKeyWait){
stopWaitAnime();
if(tGlobalData.data.environment.voicecut){
tSound.stopVoice();
}
if(mstrings.isPutCharacter()){
phase=PTick;
}else{
if(flagReset){
clearMessage();
flagReset=false;
}
phase=PNone;
}
}
}

//--------------------------------------------------------------
// wait anime
//--------------------------------------------------------------
function waitAnime(){
if(layerKeyWait.visible){
if(countKeyWait%tSettings.pageWaitSpeed==0){ //š2012.11.13ƒL[‘Ò‚¿ƒAƒCƒRƒ“‚̃JƒXƒ^ƒ}ƒCƒYî•ñ‚ðŠO‚ÉŽ‚‚悤‚ɕύX
var cnt=countKeyWait\tSettings.pageWaitSpeed%tSettings.pageWaitDivition; //š2012.11.13ƒL[‘Ò‚¿ƒAƒCƒRƒ“‚̃JƒXƒ^ƒ}ƒCƒYî•ñ‚ðŠO‚ÉŽ‚‚悤‚ɕύX
layerKeyWait.imageLeft=-cnt*(layerKeyWait.imageWidth\tSettings.pageWaitDivition); //š2012.11.13ƒL[‘Ò‚¿ƒAƒCƒRƒ“‚̃JƒXƒ^ƒ}ƒCƒYî•ñ‚ðŠO‚ÉŽ‚‚悤‚ɕύX
if(mode==ModeNovel){
layerKeyWait.setPos(mstrings.lastRight+4,mstrings.lastBottom-layerKeyWait.imageHeight-2);
}else{
layerKeyWait.setPos(tSettings.nameWindowLeft+tSettings.pageWaitLeft,tSettings.nameWindowTop+tSettings.pageWaitTop);
}
}
++countKeyWait;
}
}

function startWaitAnime(){
countKeyWait=0;
layerKeyWait.imageLeft=0;
if(mode==ModeNovel){
layerKeyWait.setPos(mstrings.lastRight+4,mstrings.lastBottom-layerKeyWait.imageHeight-2);
}else{
layerKeyWait.setPos(tSettings.nameWindowLeft+tSettings.pageWaitLeft,tSettings.nameWindowTop+tSettings.pageWaitTop);
}
layerKeyWait.visible=true;
}

function stopWaitAnime(){
layerKeyWait.visible=false;
}

//--------------------------------------------------------------
// ƒ‚[ƒh
//--------------------------------------------------------------
function setMode(mode){
tLocalData.setScriptMessageMode(this.mode=mode);
if(mode==ModeWindow){
mstrings.setWindow(tSettings.messageWindowLeft+tSettings.messageOffsetLeft,tSettings.messageWindowTop+tSettings.messageOffsetTo​p,tSettings.messageWidth,tSettings.nameWindowLeft+tSettings.nameOffsetLeft,tSettings.nameWindowTop+tSettings.nameOffsetTop);
layer.fillRect(0,0,layerString.width,layerString.height,0x00000000);
layerFrame.visible=true;
}else{
mstrings.setWindow(tSettings.novelOffsetLeft,tSettings.novelOffsetTop,tSettings.novelWidth);
layer.fillRect(0,0,layerString.width,layerString.height,0xa0000000);
layerFrame.visible=false;
}
mstrings.resetLocation();
}

//--------------------------------------------------------------
// •\Ž¦A”ñ•\Ž¦
//--------------------------------------------------------------
function setVisible(visible,fade){
if(this.visible!=visible){
if(fade){
if(visible){
layer.opacity=0;
fadeAlpha=8;
layer.visible=this.visible=visible;
tLocalData.setScriptMessageVisible(this.visible);
}else{
layer.opacity=255;
fadeAlpha=-8;
this.visible=visible;
tLocalData.setScriptMessageVisible(this.visible);
}
}else{
layer.opacity=255;
fadeAlpha=0;
layer.visible=this.visible=visible;
tLocalData.setScriptMessageVisible(this.visible);
}
}
}

function setHide(hide){
if((this.hide=hide)!=false){
layer.visible=false;
}else{
layer.visible=visible;
}
}

//--------------------------------------------------------------
// ƒEƒBƒ“ƒhƒEƒCƒ[ƒWÝ’è
//--------------------------------------------------------------
function setWindowImage(base,left,center,right,renew=true){
tLocalData.setMessageWindowFile(base,left,center,right);
if(renew){
layerFrame.loadImages(base!=void?base:FileMessageWindow);
layerNameLeft.loadImages(left!=void?left:FileNameWindowLeft);
layerNameRight.loadImages(right!=void?right:FileNameWindowRight);
layerNameCenter.loadImages(center!=void?center:FileNameWindowCenter);
}
}

function resetWindowImage(renew=true){
setWindowImage(void,void,void,void,renew);
}

function reloadWindowImage(){
setWindowImage(tLocalData.getMessageWindowFileB(),tLocalData.getMessageWindowFileL(),tLocalData.getMessageWindowFileC(),tLocalDa​ta.getMessageWindowFileR());
}

//--------------------------------------------------------------
// ƒƒbƒZ[ƒWó‘Ô
//--------------------------------------------------------------
function isBusy(){
return phase!=PNone;
}

function isFade(){
return fadeAlpha?true:false;
}
}

//==============================================================
// ƒƒbƒZ[ƒW•¶Žš—ñ
//==============================================================
class TMStrings{

var layer;
var message;
var mstrings;
var nameLeft,nameTop,nameWidth;
var windowLeft,windowTop,windowWidth;
var currentLeft,currentTop,currentIndex;
var currentNameLeft,currentNameTop;
var lastRight,lastBottom;
var totalHeight;

//--------------------------------------------------------------
// Constructor
//--------------------------------------------------------------
function TMStrings(layer){
this.layer=layer;
mstrings=new Array();
}

//--------------------------------------------------------------
// Destructor
//--------------------------------------------------------------
function finalize(){
delete mstrings;
}

//--------------------------------------------------------------
// ƒEƒBƒ“ƒhƒEÝ’è
//--------------------------------------------------------------
function setWindow(windowleft,windowtop,windowwidth,nameleft=void,nametop=void){
windowLeft=windowleft;
windowTop=windowtop;
windowWidth=windowwidth;
nameLeft=nameleft;
nameTop=nametop;
}

function resetLocation(){
currentLeft=windowLeft;
currentTop=windowTop;
currentNameLeft=nameLeft;
currentNameTop=nameTop;
lastRight=0;
lastBottom=DefaultMessageLineHeight;
}

//--------------------------------------------------------------
// •¶Žš—ñÝ’è
//--------------------------------------------------------------
function setString(str){
message=str;
mstrings.clear();

var status=new Dictionary();
status.mstrings=mstrings;
status.params=%['index'=>0,'left'=>0,'leftofs'=>0,'top'=>0,'width'=>0,'height'=>0,'size'=>DefaultMessageSize,'color'=>DefaultMessageColor,'shadowc​olor'=>DefaultMessageShadowColor,'wait'=>DefaultMessageWait,'flash'=>false,'name'=>false,'group'=>0];

var withName=0;
while(status.params.index<message.length){

var params=getCharacter(message,status);
status.params.index=params.index;
//dm(params.string);

params.name=false;
if(withName==0){
if("y"==params.string){
// y–¼‘Oz‚ðŠÜ‚Þ•¶Žš—ñ
withName=1;
params.flash=true; // wait‚𖳎‹‚·‚é
if(nameLeft!==void){continue;} // windowƒ‚[ƒh‚¾‚ÆŠ‡ŒÊ‚Í–³Ž‹
}else{
// ŠÜ‚Ü‚È‚¢•¶Žš—ñ
withName=-1;
}
}else if(withName==1){
params.flash=true; // wait‚𖳎‹‚·‚é
if("z"==params.string){
// –¼‘OI—¹
withName=2;
if(nameLeft!==void){continue;} // windowƒ‚[ƒh‚¾‚ÆŠ‡ŒÊ‚Í–³Ž‹
}else{
if(nameLeft!==void){
params.name=true; // name—“‚É•\Ž¦
}
}
}

if("("==params.string){
var to=message.indexOf(")",status.params.index);
if(to!=-1){
var length=to-status.params.index;
var com=message.substring(status.params.index,length);
//dm("com:"+com);
if(com.length){
var list=/(.*)\|(.*)/.exec(com);
//dm(status.params.index+"-"+to);
//dm(list);
if(!list.count){
// ()‚Ì’†‚É|‚ª–³‚©‚Á‚½ê‡
list[1]=com; // •¶Žš—ñÝ’è
list[2]=""; // ƒ‹ƒr‚È‚µ
}
if(list[1].length){

// •¶Žš—ñ‚ƃ‹ƒr‚̃ŠƒXƒg‚ðì‚é
var strList=new Array();
var rubyList=new Array();
var strWidth=0;
var rubyWidth=0;
var fontSize=params.size*DefaultMessageSizeStep;

// •¶Žš—ñƒŠƒXƒg
(Dictionary.assign incontextof status.params)(params);
status.params.index=0;
status.params.group+=0x8001;
while(status.params.index<list[1].length){
var tempparams=getCharacter(list[1],status);
strList.add(tempparams);
strWidth+=tempparams.width;
(Dictionary.assign incontextof status.params)(tempparams);
}

// ƒ‹ƒrƒŠƒXƒg
(Dictionary.assign incontextof status.params)(params);
status.params.index=0;
status.params.group+=0x8001;
status.params.size\=2;
while(status.params.index<list[2].length){
var tempparams=getCharacter(list[2],status);
rubyList.add(tempparams);
rubyWidth+=tempparams.width;
(Dictionary.assign incontextof status.params)(tempparams);
}

// ƒ‹ƒr‚ª•¶Žš•‚æ‚è’·‚¢ê‡‚Í•¶Žš•‚ðL‚°‚é
if(rubyWidth>strWidth){
var w=((rubyWidth-strWidth)+(strList.count-1))\strList.count;
strWidth=0;
for(var i=0;i<strList.count;i++){
strWidth+=strList.width+=w;
strList.leftofs+=w\2;
}
}

/*
if(false&&strList.count>=3&&strWidth-(strList[0].width+strList[strList.count-1].width)\2>=rubyWidth){
// ‚R•¶ŽšˆÈã‚ōŏ‰‚Ì•¶Žš‚Ì’†‰›‚©‚çÅŒã‚Ì•¶Žš‚Ì’†‰›‚ÉŽû‚Ü‚é‚Æ‚«
strWidth-=(strList[0].width+strList[strList.count-1].width)\2;
var pitch=rubyList.count>=2?strWidth\(rubyList.count-1):0;
var left=strList[0].width\2;
for(var i=0;i<rubyList.count;i++){
var j,sum=0;
for(j=0;j<strList.count;j++){
sum+=strList[j].width;
if(left<=sum){
break;
}
}
rubyList.leftofs=left-(sum-strList[j].width)-rubyList.width\2-strList[j].leftofs;
if(strList[j].ruby===void){
strList[j].ruby=new Array();
}
strList[j].ruby.add(rubyList);
left+=pitch;
}
}else{
*/
// ‚»‚êˆÈŠO
var left=(strWidth-rubyWidth)\2;
for(var i=0;i<rubyList.count;i++){
var j,sum=0;
for(j=0;j<strList.count;j++){
sum+=strList[j].width;
if(left<=sum){
break;
}
}
rubyList.leftofs=left-(sum-strList[j].width)-strList[j].leftofs;
if(strList[j].ruby===void){
strList[j].ruby=new Array();
}
strList[j].ruby.add(rubyList);
left+=rubyList.width;;
}
/*
}
*/

for(var i=0;i<strList.count;i++){
mstrings.add(strList);
}
}
}
params.index=to+1;
++params.group;
(Dictionary.assign incontextof status.params)(params);
continue;
}
}

//dm(params.string);
if(!/[)!?\]}‘‹fhñŒŽABXrtvxzl‚Ÿ‚¡‚£‚¥‚§‚Á‚á‚ã‚å‚ìJKTUƒ@ƒBƒDƒFƒHƒbƒƒƒ…ƒ‡ƒŽƒ•ƒ–E[RSI“jHnp¡£¤¥§¨©ª«¬­®¯°Þ߁‘]/.test(params.string)){
++params.group;
}
if(/[\cd]/.test(params.string)&&(mstrings.count>0&&mstrings[mstrings.count-1].string==params.string)){
--params.group;
}
mstrings.add(params);
(Dictionary.assign incontextof status.params)(params);
}

// À•WÝ’è
totalHeight=0;
nameWidth=0;
var index=0;
var startIndex=index;
var locate=false;
while(index<mstrings.count){
if(mstrings[index].name){
mstrings[index].left=currentNameLeft+mstrings[index].leftofs;
currentNameLeft+=mstrings[index].width;
nameWidth+=mstrings[index].width;
++index;
}else if(mstrings[index].string=="\\"&&mstrings[index].escape=="cr"){
// ‰üs‚·‚é
if(index>0&&mstrings[index-1].name){
// –¼‘O‚Ì‚·‚®Œã‚̉üs
var maxHeight=setStringLocation(mstrings,startIndex,index,currentNameTop);
startIndex=++index;
currentNameLeft=nameLeft;
currentNameTop+=maxHeight;
totalHeight+=maxHeight+DefaultMessageLinePitch;
locate=true;
}else{
// ƒƒbƒZ[ƒW‚̉üs
var maxHeight=setStringLocation(mstrings,startIndex,index,currentTop);
startIndex=++index;
currentLeft=windowLeft;
currentTop+=maxHeight+DefaultMessageLinePitch;
totalHeight+=maxHeight+DefaultMessageLinePitch;
locate=true;
}
}else if(mstrings[index].string=="\\"&&mstrings[index].escape=="key"){
// ƒL[‘Ò‚¿
++index;
}else if(currentLeft+mstrings[index].width<=windowLeft+windowWidth){
mstrings[index].left=currentLeft+mstrings[index].leftofs;
currentLeft+=mstrings[index].width;
++index;
locate=false;
}else{
// windowƒTƒCƒY‚ð’´‚¦‚½‚ç‹Ö‘¥ˆ—
var endIndex=index;
while(startIndex<=index){
// ŽŸ‚Ì•¶Žš‚ƃOƒ‹[ƒv‚Ü‚½‚͍s––‹ÖŽ~•¶Žš‚̏ꍇ‚Í‚P•¶Žší‚é
// s––‚É \a ‚ª—ˆ‚é‚ƍs––‹ÖŽ~•¶Žš‚ªs––‚É–³‚¢‚Æ‚¢‚¤‚±‚ƂɂȂ邪Žd—l‚Á‚Ä‚±‚Æ‚Å
// ex. •¶Žš•¶Žš•¶Žši\a
if((mstrings[index-1].group&0x7fff)==(mstrings[index].group&0x7fff)||/[(\[{egqsuwykimo¢]/.test(mstrings[index-1].string)){
--index;
}else{
break;
}
}
if(startIndex==index){
// í‚è‚·‚¬‚Ä•¶Žš‚ª–³‚­‚È‚Á‚½‚ç‹Ö‘¥‚Í–³Ž‹‚·‚é
index=endIndex;
}

// ‰üs‚·‚é
var maxHeight=setStringLocation(mstrings,startIndex,index,currentTop);
startIndex=index;
currentLeft=windowLeft;
currentTop+=maxHeight+DefaultMessageLinePitch;
totalHeight+=maxHeight+DefaultMessageLinePitch;
locate=true;
}
}
if(!locate){
var maxHeight=setStringLocation(mstrings,startIndex,index,currentTop);
totalHeight+=maxHeight+DefaultMessageLinePitch;
}
currentIndex=0;
}

//--------------------------------------------------------------
// •¶Žš—ñŽæ“¾
//--------------------------------------------------------------
function getString(){
var result=void;
for(var i=0;i<mstrings.count;i++){
if(!mstrings.name){
if(mstrings.string=='\\'){
if(mstrings.escape=='cr'){
// if(i>0&&mstrings.name){
continue;
// }else{
// break;
// }
}else if(mstrings.escape=='key'||mstrings.escape=='page'){
continue;
}
}
result+=mstrings.string;
}
}
return result;
}

//--------------------------------------------------------------
// •¶Žš—ñ‚̍À•W‚ðŠm’è‚·‚é
//--------------------------------------------------------------
function setStringLocation(ms,start,end,top){
var max=DefaultMessageLineHeight;
for(var i=start;i<end;i++){
var height=ms.height+(ms.ruby===void?0:ms.ruby[0].height);
if(height>max){
max=height;
}
}
//max+=DefaultMessageLinePitch;
for(var i=start;i<end;i++){
ms.top=top+(max-ms.height);
}
return max;
}

//--------------------------------------------------------------
// ƒƒbƒZ[ƒW‚©‚ç‚P•¶ŽšŽæ“¾
//--------------------------------------------------------------
function getCharacter(_message,_status,rubyflag=false){
var result=new Dictionary();
(Dictionary.assign incontextof result)(_status.params);
result.flash=false; // ‰Šú’l‚Í flash=false
while(result.index<_message.length){
var c=_message.charAt(result.index);
if(c=="["){
var to=_message.indexOf("]",result.index);
if(to!=-1){
var length=to-result.index+1;
var com=_message.substring(result.index+1,length-2).trim();
if(com.length){
//dm(result.index+"-"+to+":"+com);
if(com=="r"){
// ‰üsŽw’è
result.string="\\";
result.escape="cr";
result.width=0;
result.height=0;
result.flash=true;
result.index=to+1;
return result;
}else if(com=="k"){
// ƒL[‘Ò‚¿
result.string="\\";
result.escape="key";
result.width=0;
result.height=0;
result.flash=true;
result.index=to+1;
return result;
}else if(com=="p"){
// ‰üƒy[ƒW
result.string="\\";
result.escape="page";
result.width=0;
result.height=0;
result.flash=true;
result.index=to+1;
return result;
}else{
// ‚»‚Ì‘¼
var param=com.split("=");
if(param.count==2){
var key=param[0].trim();
if(result[key]!==void){
var value=param[1].trim();
if(key=="size"){
if(!rubyflag){
result[key]=value!="default"?+value:DefaultMessageSize;
}
}else if(key=="color"){
result[key]=value!="default"?+value:DefaultMessageColor;
}else if(key=="shadowcolor"){
result[key]=value!="default"?+value:DefaultMessageShadowColor;
}else if(key=="wait"){
result[key]=value!="default"?+value:DefaultMessageWait;
}
}
}
}
}
result.index=to+1;
}else{
layer.font.height=result.size*DefaultMessageSizeStep;
result.width=layer.font.getTextWidth(c);
result.height=layer.font.getTextHeight(c);
result.string=c;
++result.index;
return result;
}
}else if(c=="\\"&&result.index+1<_message.length&&(_message.charAt(result.index+1)=="n"||_message.charAt(result.index+1)=="k"||_message.charAt(result.index+1)=="p")){
// ‰üsŽw’è
if(_message.charAt(result.index+1)=="n"){
result.string="\\";
result.escape="cr";
}else if(_message.charAt(result.index+1)=="k"){
result.string="\\";
result.escape="key";
}else if(_message.charAt(result.index+1)=="p"){
result.string="\\";
result.escape="page";
}
result.width=0;
result.height=0;
result.flash=true;
result.index+=2;
return result;
}else{
layer.font.height=result.size*DefaultMessageSizeStep;
result.width=layer.font.getTextWidth(c);
result.height=layer.font.getTextHeight(c);
result.string=c;
++result.index;
return result;
}
}
return null;
}

//--------------------------------------------------------------
// 1‰ñ•ªo—Í
//--------------------------------------------------------------
function putCharacter(flash=false){
if(mstrings!==void){
while(currentIndex<mstrings.count){
var index=currentIndex++;
drawCharacter(mstrings[index]);
if(mstrings[index].string=="\\"&&mstrings[index].escape=="key"){
return 0x8000000000000000;
}else if(mstrings[index].string=="\\"&&mstrings[index].escape=="page"){
return 0x4000000000000000;
}
if(!flash&&!mstrings[index].flash&&mstrings[index].wait!=0){
return mstrings[index].wait;
}
}
}
return 0;
}

//--------------------------------------------------------------
// o—Í‚·‚镶Žš‚ª‚ ‚é‚©
//--------------------------------------------------------------
function isPutCharacter(){
return mstrings!==void&&currentIndex<mstrings.count;
}

//--------------------------------------------------------------
// ‚P•¶Žš•`‰æ
//--------------------------------------------------------------
function drawCharacter(params){
if(!(params.string=="\\"&&params.escape!==void)){
var left=params.left;
var top=params.top;
layer.font.height=params.size*DefaultMessageSizeStep;
layer.drawText(left,top,params.string,params.color,255,true,255,0,1,1,1);
lastRight=left+params.width;
lastBottom=top+params.height;

// ƒ‹ƒr‚ª‚ ‚Á‚½‚烋ƒr‚à•\Ž¦
if(params.ruby!==void){
for(var i=0;i<params.ruby.count;i++){
layer.font.height=params.ruby.size*DefaultMessageSizeStep;
layer.drawText(left+params.ruby.leftofs,top-params.ruby.height,params.ruby.string,params.ruby.color,255,true,255,0,1,1,1);
}
}
}
}

}



Von:    Scales 08.03.2019 22:01
Betreff: Fehlermeldung von japanischem Game [Antworten]
Ich kenn' das Spiel nicht aber die Fehlermeldung deutet auf ein Problem mit einer Regular Expression hin, genauer das irgendwo ein [ in einem String ist über das er stolpert. Der Code den du da angehängt hast ist ziemlich offensichtlich falsch codiert (ƒƒbƒZ[ƒEƒBƒ“ƒhƒEFƒtƒ@ƒCƒ‹–¼•ÏXE’ljÁ statt メッセージ画像、透過率設定). Ich weiß nicht ob das ein Problem ist das irgendwo unterwegs entstanden ist oder ob der bei dir genauso angezeigt wird. Falls es im Debug Fenster genauso aussieht, könnte das eine Erklärung für dein Problem sein. Nimmt man ein in Shift JIS kodiertes ゼ und interpretiert es als ANSI kommt ƒ[ bei raus (bei der deutschen Codepage ist das zweite Zeichen immer noch die Eckige Klammer aber das erste ist nicht druckbar). Wenn dieses Zeichen jetzt Teil von 'nem String, der als Regular Expression behandelt wird ist, würde eine Fehlermeldung wie oben entstehen. Ich würde daher probieren die System Locale (in den Regionseinstellungen) auf Japanisch zu ändern, bevor du die Anwendung startest.
Zuletzt geändert: 08.03.2019 22:02:38





Zurück