忍者ブログ

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【捨丸&KID】如何放置SP圖像(2)

 

 

*  製作文字列SP

*  文字列SP的獨立命令

  文字列SP利用圖像tag也能夠製作,最近的版本也新增了獨立命令。

  將文字列製作成圖像檔,表示在畫面上的命令。

  橫跨複數行的文字SP也可以用此命令作成。

  

 

程式碼

strsp SP號碼,文字列,左上角x座標,左上角y座標,橫向文字數目,縱向文字數目,文字寬,文字高,字間橫向間隔,行間縱向間隔,粗字flag,陰影flag(,顏色指定)…

 

 

  

範例

strsp 1,”出現在那邊的是¥她重要的……”,150,320,23,3,24,25,0,1,0,1,#FF0000,#FFFFFF (注意這邊不要用enter斷行)

 

 

  strsp為命令本體,為STRingSPrite的縮寫,各種參數的排列方式和setwindow命令相似。

  150,320為SP的左上角座標(x,y)。

  23為橫向的文字列文字數,當到達最後時會切換到下一行。

  3為縱向的文字行數。

  24為文字寬。

  25為文字高。

  0為文字和文字間的橫向間隔。

  1為行間和行間的縱向間隔。

  0為粗字指定flag。(ON=1,OFF=0)

  1為陰影指定flag。(ON=1,OFF=0)

  #FF0000為文字顏色。

  #FFFFFF為cell2號的文字顏色。(所謂cell2目前就當作滑鼠移動到上面時會出現的顏色)

 

  當想要進行改行的時候請輸入「¥」(和文章改頁的時候是同樣的記號,請注意)。

  關於表示字型可以由後述的spfont命令進行更改。

  可藉由重複輸入顏色指定來作成複數cell的文字SP。

 

 

*  變更文字SP的字型

  變更文字列SP字型跟文字大小的命令。

  程式碼

  spfont “字型名稱”,文字寬,文字高,橫向文字間隔,縱向行間間隔,粗字flag,陰影flag

 

 

範例

spfont “MS gothic”,24,25,0,1,0,1

 

 

 spfont為命令本體,為SPriteFONT的縮寫。

  “MS gothic”為所指定的字型名稱。

  24為文字寬。

  25為文字高。

  0為文字和文字間的橫向間隔。

  1為行間和行間的縱向間隔。

  0為粗字指定flag。(ON=1,OFF=0)

  1為陰影指定flag。(ON=1,OFF=0)

  利用strsp命令所製作的文字列SP和利用畫像tag所設定的文字列SP皆可以利用此命令來設定字型。

 

*  文字列SP的移動

  將利用文字SP命令作成的SP實際在畫面上移動看看。

  可以利用for~next來輸入移動座標數值。而SP移動命令msp、amsp的x,y座標可以以變數輸入來使得其中的數值不斷替換,每經過一次迴圈便會將畫面更新一次這樣一來就可以讓其流暢移動。

 

 

;mode800

*define

clickstr"!?。」",2

game

*start

bg "BG\093.JPG",1

strsp 1,”出現在那邊的是¥她重要……”,150,320,23,3,24,25,0,1,0,1,#FF0000,#FFFFFF

print 1

click

for %0=0 to 5

msp 1,50,25,255

print 1

wait 500

next

end

 

 

 

*  圖像SP的移動

  讓圖像SP移動的系統和前述的文字列SP移動命令沒有太大的差別。

  將變數輸入x,y座標數值中,使數值的變化重複表現的話便能表示出移動。

 

*  讓SP移動的可能性

  利用for~next做出的SP移動不只是可以用在人物立圖、SP這種較小的圖像上。像是背景的切換上、或是讓比畫面大小還要大的背景圖移動時都可以使用。

  能夠藉此做出許多有趣的演出效果。

 

*  改變人物立圖和SP重疊的關係。

  有時後會想要在人物立圖後面表示SP。

  像想做出在女主角的後方天空裡有著飛上天的煙火這畫面時,如果煙火的圖像出現在女主角的人物立圖之前那會很令人困擾。並且當設定了許多SP作為button時,可能會出現被人物立圖所蓋住無法表示這樣的情況。

  人物立圖的預設階層為第25號。當SP的號碼被設定為0~25號的時候會被表示在人物立圖之前,而如果設定為26號以上的話會表示在人物立圖的後面。

  當想要變更人物立圖的階層號碼時,必須在定義區塊使用humanz命令進行宣告。請注意此命令只能在定義區塊使用。

  程式碼

  humanz 階層的數值

 

  範例

  *define

  humanz 50

  game

  *start

 

humanz為命令本體。

  其意義為人物立圖(human)在Z軸(深度)的數值。

  50為所指定階層的數值。

  在此範例中會變更為:0~50號的SP會表示在人物立圖之前,而51號之後的SP會表示在人物立圖之後。

 

*  新的SP命令

  在之後Nscripter中也追加了新的SP命令。

  其特點是旋轉、放大縮小、左右上下翻轉、追加計算blend都變得可能使用。

  並非在處理上相當獨特的demo命令,而是真的作為SP來處理所以在使用上變得較為簡便。

  但是由於能夠做出更多的處理,所以副作用也使得必須設定的數值增加了。在只是想作為普通的SP處理的時候還是使用以前的命令較為簡單。

 

*  叫出功能擴張SP的命令

  和普通的SP不同,圖像的起點位置並不是「左上角」而是「中心」。這麼是為了讓圖像能夠進行迴轉效果、擴大效果。

  擴大率數值於整數方向為擴大縮小,輸入minus方向時則圖像會如鏡像班反轉。當輸入-100的時候為等比例反轉。

  回轉角的單位為度能夠輸入0-360的數值。迴轉方向為逆時針旋轉。

  程式碼

  lsp2 SP號碼,呼叫圖像文字列,中心x座標,中心y座標,x軸擴大率,y軸擴大率,迴轉角度(,初期α值,如省略則為255)

 

  範例

  lsp2 0,”:c;test.bmp”,320,240,100,200,36

 

 

*  將功能擴張SP以非表示狀態叫出的命令

  此命令為將功能擴張以非表示狀態叫出的命令。

  程式碼

  lsph2 SP號碼,呼叫圖像文字列,中心x座標,中心y座標,x軸擴大率,y軸擴大率,迴轉角度(,初期α值,如省略則為255)

  

範例

lsph2 0,”:c;test.bmp”,320,240,100,200,36

 

*  將功能擴張SP以表示狀態叫出的blend命令

  此命令為將擴張命令以經過追加計算blend的表示狀態叫出的命令。

  程式碼

  lsp2add SP號碼,呼叫圖像文字列,中心x座標,中心y座標,x軸擴大率,y軸擴大率,迴轉角度(,初期α值,如省略則為255)

 

範例

lsp2add 0,”:c;test.bmp”,320,240,100,200,36

 

  和普通的lsp2命令不同之處為圖像經過追加計算blend。

  追加計算blend為在圖像的明亮度上經過重複計算的加算方法。簡單的說,就是圖像會變得更明亮。

  利用這個功能就能夠表現出霓虹、光束兵器這樣的表現。

 

*  將功能擴張SP以非表示狀態叫出的blend命令

此命令為將擴張命令以經過追加計算blend的非表示狀態叫出的命令。

  程式碼

  lsph2add SP號碼,呼叫圖像文字列,中心x座標,中心y座標,x軸擴大率,y軸擴大率,迴轉角度(,初期α值,如省略則為255)

 

範例

lsph2add 0,”:c;test.bmp”,320,240,100,200,36

 

*  功能擴張SP消去命令

  將功能擴張SP從記憶體上消去的命令。

  程式碼

  csp2 SP號碼

  

範例

csp2 2

 

*  功能擴張SP的移動命令

利用相對位置的移動命令

  讓功能擴張SP的現在位置座標數值經過增加或是減少的移動命令。

  程式碼

  msp2 功能擴張SP號碼,中心x座標增減數值,中心y座標增減數值,x軸擴大率增減數值,y軸擴大率增減數值,迴轉角度增減數值(,α數值增減值)

 

範例

msp2 0,10,20,-10,10,5

 

  msp2是命令本體。

  0是功能擴張SP的號碼。

  10是x軸座標的增減數值。當想要朝相反方向移動時請輸入-10這樣加上minus符號的數值。20是y軸座標的增減數值。當想要朝相反方向移動時請輸入-20這樣加上minus符號的數值。

  -10是x軸方向擴大率的增減數值。10是y軸方向擴大率的增減數值。

  當擴大率的數值經過減法變成負數的時候,圖像會像鏡像這樣反轉。

  5為迴轉角度的增減數值。數值為正數時方向為反時針轉,當數值為負數的時候方向為順時針轉。

  使用這個命令後必須使用print命令才能夠使它表現。

 

利用絕對位置的移動命令

  將擴張功能SP從現在的座標位置移動到所指定絕對位置的命令。

  程式碼

  amsp2 功能擴張SP號碼,中心x座標絕對數值,中心y座標絕對數值,x軸擴大率絕對值,y軸擴大率絕對值,迴轉角度絕對值(,α數值絕對值)

  

範例

amsp2 0,300,150,-100,50,60

 

  asmp2為命令本體。

  0為SP號碼。

  300為x軸座標的絕對值。

  150為y軸座標的絕對值。

  此命令所利用的是絕對座標,直接輸入x,y的座標值。SP會直接表示在這個座標上。

  -100為x軸的擴大率絕對數值。50為y軸的擴大率絕對數值。當擴大率為minus數值的時候,圖像會在其軸線上進行鏡像反轉。60為旋轉角度的數值。依據所輸入的數值進行逆時針旋轉。

  使用這個命令後必須使用print命令才能夠使它表現。

 

*  將功能擴張SP暫時消去或是表示的命令

  此為能夠將功能擴張SP切換表示模式、非表示模式的命令。

  程式碼

  vsp2 功能擴張號碼,表示flag(0或1)

  

範例

  vsp2 1,0

  vsp2是命令本體。

  1為SP號碼。

  0為表示flag。當數值為0的時候為非表示模式,數值為1的時候為表示模式。

  使用這個命令後必須使用print命令才能夠使它表現。

 

*  將功能擴張SP一起消去或是表示的命令

將功能擴張SP一起消去

  將全部的功能擴張SP一起暫時消去。

  將目前被表示,全部的功能擴張SP全部切換至非表示狀態。

  程式碼

  allsp2hide

  範例

  allsp2hide

 

將功能擴張SP一起表示

  將被allsp2hide所隱藏起來的功能擴張SP表示出來。

  並不會對被vsp2等命令個別消去的功能擴張SP做出反應。

  當想要讓button console、SP的集合一起消去或是出現的時候可以用到的命令。

  程式碼

  allsp2resume

  範例

  allsp2resume

 

 

 

拍手[1回]

PR

この記事にコメントする

お名前
タイトル
メール
URL
コメント
絵文字
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
パスワード

不好意思想請問一下

抱歉
因為最近作研究的關係接觸到Nscripter
網路上幾乎都是程式碼的教學
但有一點疑問是:
如果我遊戲完成之後要怎麼辦?
因為官網上下載下來的檔案需要日文語系系統支援
所以無法使用也得知如何成為正式的檔案
還是說
Nscripter所製作出來的遊戲是沒有exe檔之類的形式嗎?
不好意思還請指教
感激不盡

無題

哈囉 Nscripter 有一個主要的exe檔 可以參考http://recrit.game-ss.com/Category/6/3/
的文章 裡面有說明要如何使用Nscripter 有問題歡迎再發問囉
  • KID
  • 2010/11/23(Tue)21:32:03
  • 編集

不好意思我又來了

嗯,我了解NScripter是利用記事本來執行
所以當我整個遊戲完成之後
如果要分享給別人的話
就要連我的所有劇情、圖片等一起給別人嗎
這樣的話是否代表我的遊戲有可能被別人更改
沒有辦法直接合成一個檔嗎

還有NScripter可以讀取0.txt~99.txt
如果我分成許多記事本檔要如何串聯讀取呢
以上
不好意思我問題好多
還請替我指點迷津
感激不盡

無題

先回答記事本 NS會從0.txt一直照順序讀到99.txt
中間斷在哪邊都沒關係 中間有缺號也沒關係
不想分段全部塞在0.txt也無妨 分段是方便自己修改程式用的
至於打包 要用NS的工具 nsaarc.exe 打包 把要打包的東西放在一個資料夾 再利用這個程式指定路徑就可以打包 腳本打包要用nscmake.exe 但網路上已有拆NS封包的程式 基本上這是防君子不防小人
最後用這個工具記得要在腳本定義區加上 nsa
  • KID
  • 2010/11/24(Wed)22:00:51
  • 編集

感激~~

感謝前輩的指導啊
萬分感謝
另外還有個不是很大的問題還想指教
就是游標以及主要程式的圖樣可以更改嗎
不好意思我問題好多OTZ
感激不盡

無題

游標圖可以更改

setcursor 執行

程式碼

setcursor {0,1},圖像檔案名稱,數值1,數值2

功能

變更等待click游標的命令。

option

{0,1} 變更哪種類的游標。只輸入0或是1。

0是等待click

1是等待改頁

圖像檔案名稱 等待click游標的檔案名稱

數值1 原本的游標表示位置左上角座標在x軸上移動的距離

數值2 原本的游標表示位置左上角座標在y軸上移動的距離

備註

預設的游標如下面的設定(所以可以直接在exe檔旁邊加入新的cursor0.bmp 就可以更換游標圖示)。


等待click “:l/3,160,2;cursor1.bmp”0,0

等待改頁 “:l/3,160,2;cursor0.bmp”0,0

範例

setcursor 1, “:l/3,160,2;cursor3.bmp”0,0

setcursor 0, “:l/3,160,2;cursor4.bmp”0,0

主要程式.exe的圖樣就必須去網路上下載exe擋圖案更換程式 但注意win會將exe檔資訊儲存起來 所以就算更換過後在自己已經執行過該exe檔的電腦是無法看到變更的 必須要到新的電腦才可以看到
  • KID
  • 2010/12/01(Wed)01:08:41
  • 編集

無題

不好意思 上篇回答有點會錯意 setcursor指令更改的是文字框的等待圖示 如果是滑鼠遊標的話是沒辦法更改的~~
  • KID
  • 2010/12/02(Thu)15:26:12
  • 編集

右鍵選單有大麻煩!

非常抱歉前來叨擾
小的有一個問題想要來求助

目前使用的是貴團隊的 "KAGEX2注譯繁中化版"
但是配上了D大的右鍵菜單範例的語法以後
出現了十分微妙的問題

第一次按右鍵時 , 後面的 "主菜單" 這張圖跑不出來

再按一次右鍵後 , 按鈕會消失 , 但是會出現一個黑幕 , 雖然擋住了但是文字還是可以繼續跑

第三次按右鍵並選擇存檔後 , 會出現存檔畫面並且可以存檔

http://images.plurk.com/3653620_c13e20989c07cc86aa3fff6a83d56ee3.jpg
存檔完離開菜單後 , "主菜單" 那張圖出現了 , 而且怎樣都弄不掉

並且之後按右鍵 , 菜單不會出現 , 只會把對話框消除

在D大的rmenu.ks檔中
我唯一動過的指令只有
*return
[backlay]
[freeimage layer=1 page="back"]
[freeimage layer=2 page="back"]
[freeimage layer=3 page="back"]
我把"layer="後面的數字改掉了
因為不改掉就會發生錯誤

請問這樣還有救嗎 QAQ
這問題困擾我好幾天了 , 怎麼改都沒辦法解決

請麻煩指點
小的我感激不盡
  • 非常需要救助的新手
  • 2010/12/18(Sat)18:00:57
  • 編集

無題

非常謝謝前輩的指示
感到受益良多啊
萬分感激
  • NS的初學者
  • 2010/12/20(Mon)00:09:17
  • 編集

この記事へのトラックバック

この記事にトラックバックする