忍者ブログ

[PR]

×

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

【捨丸&KID】CG模式製作介紹

 

本周是CG模式製作介紹,其實沒什麼,就只是將實際原始碼貼上來稍做講解,畢竟前面都已經學很多了,應該要能看懂才對,另一方面我本人一定得看到程式碼實例才懂,所以我認為直接用實例介紹會比較方便,另外這個程式碼其實之前網路上就有了,並不是我寫的,但我會將我遇到的問題與大家分享。

*album

lsp 500,":a;sys/album.jpg",0,0 ;這是背景
lsp 10,":s/13,15,0,0;#ffffff#999999 EXIT",50,550 ;離開按鈕

goto *album_1
;因為下面本來有sub區段,所以要加這一句跳過,所謂sub區段要搭配gosub指令,最後加個return指令就可以返回原來的地方繼續程式碼,在遊戲進行中進到save load畫面跳回來能繼續遊戲是必要的指令

;*album_sub_1
;lsp 500,":a;sys/album.jpg",0,0
;lsp 10,":s/13,15,0,0;#ffffff#999999PAGE1",50,150
;lsp 11,":s/13,15,0,0;#ffffff#999999PAGE2",50,190
;lsp 12,":s/13,15,0,0;#ffffff#999999PAGE3",50,230
;lsp 13,":s/13,15,0,0;#ffffff#999999PAGE4",50,270
;lsp 14,":s/13,15,0,0;#ffffff#999999PAGE5",50,310
;return

;*album_sub_2
;spbtn 10,10:spbtn 11,11:spbtn 12,12:spbtn 13,13:spbtn 14,14
;return

;*album_sub_3
;if %BtnRes=10 csp -1:goto *album_1
;if %BtnRes=11 csp -1:goto *album_2
;if %BtnRes=12 csp -1:goto *album_3
;if %BtnRes=13 csp -1:goto *album_4
;if %BtnRes=14 csp -1:goto *album_5
;return
;大家看到這邊我把sub區段都註解掉了,這是為什麼呢?因為製作的時候只有12張CG,根本不需要換頁阿~~~

*album_end
btndef clear
csp -1
print 10,250
return

;-----這兒開始是ALBUM畫面-----
;-----PAGE1-----
*album_1

;gosub *album_sub_1
mov $1,"pic/01magician.jpg"
mov $2,"pic/02priestess.jpg"
mov $3,"pic/03empress.jpg"
mov $4,"pic/04emperor.jpg"
mov $5,"pic/05hierophant.jpg"
mov $6,"pic/06lovers.jpg"
mov $7,"pic/07chariot.jpg"
mov $8,"pic/08strength.jpg"
mov $9,"pic/09hermit.jpg"
mov $10,"pic/10wheel.jpg"
mov $11,"pic/11justice.jpg"
mov $12,"pic/12hangedman.jpg"
;上方是將圖片名稱輸入變數,可以讓程式碼簡潔一點,

lsp 101,($1)":c/2,0,3;pic/01magician_thum.jpg"":c;sys/nosee.jpg",50,100
lsp 102,($2)":c/2,0,3;pic/02priestess_thum.jpg"":c;sys/nosee.jpg",250,100
lsp 103,($3)":c/2,0,3;pic/03empress_thum.jpg"":c;sys/nosee.jpg",450,100
lsp 104,($4)":c/2,0,3;pic/04emperor_thum.jpg"":c;sys/nosee.jpg",650,100
lsp 105,($5)":c/2,0,3;pic/05hierophant_thum.jpg"":c;sys/nosee.jpg",50,240
lsp 106,($6)":c/2,0,3;pic/06lovers_thum.jpg"":c;sys/nosee.jpg",250,240
lsp 107,($7)":c/2,0,3;pic/07chariot_thum.jpg"":c;sys/nosee.jpg",450,240
lsp 108,($8)":c/2,0,3;pic/08strength_thum.jpg"":c;sys/nosee.jpg",650,240
lsp 109,($9)":c/2,0,3;pic/09hermit_thum.jpg"":c;sys/nosee.jpg",50,380
lsp 110,($10)":c/2,0,3;pic/10wheel_thum.jpg"":c;sys/nosee.jpg",250,380
lsp 111,($11)":c/2,0,3;pic/11justice_thum.jpg"":c;sys/nosee.jpg",450,380
lsp 112,($12)":c/2,0,3;pic/12hangedman_thum.jpg"":c;sys/nosee.jpg",650,380
;看到這一排程式碼應該大家都看不懂,我一開始也看不懂,112表示該SP圖的編號,($12)這個是關鍵指令,表示若在遊戲進行中$12也就是pic/12hangedman.jpg這張圖出現過的話,就執行":c/2,0,3;pic/12hangedman_thum.jpg"否則就執行":c;sys/nosee.jpg"最後面650,380是座標,換句話說如果圖片已經顯示過就會執行lsp 112, ":c/2,0,3;pic/12hangedman_thum.jpg",650,380否則就是lsp 112, ":c;sys/nosee.jpg",650,380,真是方便阿~~
print 16

btndef ""
;gosub *album_sub_2

spbtn 10,10
for %0 = 101 to 112
cellcheckspbtn %0,%0
next
; cellcheckspbtn這個指令是甚麼呢,就是檢查這個SP圖有無cell,有cell的才會做成按鈕,所以12hangedman_thum.jpg這張圖一定是要有cell的sys/nosee.jpg這張圖一定是要沒有cell的,如此就能做出只有顯示過的圖才能變成按鈕的CG模式
*album_1_lp

btnwait2 %BtnRes
;gosub *album_sub_3
if %BtnRes=0 goto *album_1_lp
if %BtnRes=-1 goto *album_end
if %BtnRes=10 goto *album_end
if %BtnRes=101 allsphide:bg $1,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=102 allsphide:bg $2,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=103 allsphide:bg $3,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=104 allsphide:bg $4,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=105 allsphide:bg $5,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=106 allsphide:bg $6,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=107 allsphide:bg $7,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=108 allsphide:bg $8,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=109 allsphide:bg $9,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=110 allsphide:bg $10,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=111 allsphide:bg $11,15:click:bg #000000,16:allspresume:goto *album_1
if %BtnRes=112 allsphide:bg $12,15:click:bg #000000,16:allspresume:goto *album_1
;這一連串指令就不用說明了吧,總之就是顯示CG,然後回到CG模式



;-----PAGE2-----
*album_2

gosub *album_sub_1
mov $1,"pic/test_10.jpg"
mov $2,"pic/test_11.jpg"
mov $3,"pic/test_12.jpg"
mov $4,"pic/test_13.jpg"
mov $5,"pic/test_14.jpg"
mov $6,"pic/test_15.jpg"
mov $7,"pic/test_16.jpg"
mov $8,"pic/test_17.jpg"
mov $9,"pic/test_18.jpg"
lsp 101,($1)":c/2,0,3;pic/test_10_thum.jpg"":c;sys/nosee.jpg",220,80
lsp 102,($2)":c/2,0,3;pic/test_11_thum.jpg"":c;sys/nosee.jpg",380,80
lsp 103,($3)":c/2,0,3;pic/test_12_thum.jpg"":c;sys/nosee.jpg",540,80
lsp 104,($4)":c/2,0,3;pic/test_13_thum.jpg"":c;sys/nosee.jpg",220,220
lsp 105,($5)":c/2,0,3;pic/test_14_thum.jpg"":c;sys/nosee.jpg",380,220
lsp 106,($6)":c/2,0,3;pic/test_15_thum.jpg"":c;sys/nosee.jpg",540,220
lsp 107,($7)":c/2,0,3;pic/test_16_thum.jpg"":c;sys/nosee.jpg",220,360
lsp 108,($8)":c/2,0,3;pic/test_17_thum.jpg"":c;sys/nosee.jpg",380,360
lsp 109,($9)":c/2,0,3;pic/test_18_thum.jpg"":c;sys/nosee.jpg",540,360

print 16

btndef ""
gosub *album_sub_2
for %0 = 101 to 109
cellcheckspbtn %0,%0
next

*album_2_lp
btnwait2 %BtnRes
gosub *album_sub_3
if %BtnRes=0 goto *album_2_lp
if %BtnRes=-1 goto *album_end
if %BtnRes=101 allsphide:bg $1,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=102 allsphide:bg $2,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=103 allsphide:bg $3,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=104 allsphide:bg $4,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=105 allsphide:bg $5,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=106 allsphide:bg $6,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=107 allsphide:bg $7,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=108 allsphide:bg $8,15:click:bg #000000,16:allspresume:goto *album_2
if %BtnRes=109 allsphide:bg $9,15:click:bg #000000,16:allspresume:goto *album_2

;==========CG MODE終了==========
;到此為止,隨便要做幾頁都沒問題~~

 

 

拍手[0回]

PR

この記事にコメントする

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

無題

測試測試~~
  • KID
  • 2011/03/28(Mon)11:14:37
  • 編集

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

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