[求助]按右键进入SAVE菜单及存储档案速度过慢问题(已解
目前在拿D桑的範例在看。把save部分單獨拿出來作了個“點擊右鍵進入save畫面,再按右鍵的話退回到遊戲畫面”的效果。基本功能沒問題,能進入save頁面,能存檔能看到存檔的時間,截圖。
現在的問題是:
1 從遊戲界面按右鍵,到進入save頁面,會花費大概5秒的樣子。
而如果想存檔,從點了某個存檔,到存檔結束,也會愣個5秒。
2 從save頁面,按右鍵回去,看上去界面一切都正常,但文本卻無法繼續讀入。卡在了進入save時的那句話的後面(回去的時候還能在那個句子的後面看到提示繼續讀入的三角符號,按一下左鍵提示符號消失,文本無法繼續)。
不知道這兩個是啥原因造成的……鞠躬謝謝。
下面是代碼:
先是first.ks
*start
@call storage=macro.ks
@rclick enabled=true call=true storage=saveload.ks target=*save
@bg storage=black
@position layer=message0 frame=frame top=0 left=0 visible=true page=fore marginl=0 marginb=10 marginr=300 margint=450 page=fore
@current layer=message0 visible=true page=fore
這裡開始barabara
@lr
這裡開始barabara
@p
這裡開始barabara
@lr
這裡開始barabara
@p
這裡開始barabara
@p
macro.ks,基本就照搬d桑的代碼(orz)
*start
@layopt layer=0 index=1000
@layopt layer=message0 index=2000
@layopt layer=1 index=3000
@layopt layer=2 index=4000
@layopt layer=message1 index=5000
function checkdata(num)
{
var cd = Storages.isExistentStorage(kag.saveDataLocation+'/data'+num+'.bmp');
return cd;
}
function showsnap(num)
{
if (checkdata(num)==true)
{
kag.fore.layers.loadImages(%['storage'=>kag.getBookMarkFileNameAtNum(num),'visible'=>true,'left'=>90,'top'=>395]);
}
}
function hidesnap()
{
kag.fore.layers.visible=false;
}
@macro name=showsave
@locate x=420 y=180
@link exp="tf.savenum=1" target=%target onenter="showsnap(1)" onleave="hidesnap()"
File No.1
@locate x=420 y=210
@link exp="tf.savenum=2" target=%target onenter="showsnap(2)" onleave="hidesnap()"
File No.2
@locate x=420 y=240
@link exp="tf.savenum=3" target=%target onenter="showsnap(3)" onleave="hidesnap()"
File No.3
@locate x=420 y=270
@link exp="tf.savenum=4" target=%target onenter="showsnap(4)" onleave="hidesnap()"
File No.4
@locate x=420 y=300
@link exp="tf.savenum=5" target=%target onenter="showsnap(5)" onleave="hidesnap()"
File No.5
@endmacro
@return
存檔文件saveload.ks
*save
@history enabled=false output=false
@locksnapshot
@rclick enabled="true" jump="true" storage="saveload.ks" target=*return
@stopse
@backlay
@layopt layer=message0 visible=false
*start
@image layer=1 page=back storage=savebg left=0 top=0 visible=true
@position layer=message1 page=back top=0 left=0 marginl=0 marginr=0 margint=0 marginb=0 visible=true
@current layer=message1 page=back
@er
@showsave target=*savedata
;是說有在懷疑耗費時間是不是因爲這句話的關係,因爲進入save和存檔后都有用這句話……但找不出會耗費時間的原因
@trans method=crossfade time=200
@wt
@s
*savedata
@save place=&tf.savenum ask=true
@current layer=message1 page=back
@er
@showsave target=*savedata
@trans method=crossfade time=200
@wt
@s
@wt
@s
*return
@backlay
@layopt layer=message0 visible=true
@freeimage layer=1 page=back
@freeimage layer=2 page=back
@current layer=message1 page=back
@er
@trans method=crossfade time=1000
@wt
@rclick enabled=true call=true storage=saveload.ks target=*save
@unlocksnapshot
@history enabled=true output=true
@return 显示慢的话,大概是因为定义showsave时没加nowait吧,记得别忘了在定义结束前加上endnowait。。
至于返回不能继续显示文字,我想是你*return里少了吧。。。 囧了………………原來如此………………俺是笨蛋………………
多謝
页:
[1]