設置 | 登錄 | 註冊

目前共有2篇帖子。

【教程】跟我從頭學腳本(二)

1樓 蓝晶の骑士 2011-2-10 23:39

轉載自:www.66rpg.com 

原作者:Dubealex  

        Near Fantastica(特別講) 

主講人(翻譯):frantice 
電子書製作:小湖 


第二講 基本詞彙和語法(上)

一些基本的廢話將完了,我們直接進入正題^0^..接下來的請大家一起跟我實踐~
先在RGSS編輯器中新建一個腳本,插入這些:
class Say_Something 
 def initialize 
   print 「I am therefore I』m coded」 
 end 
end 
然後找個npc並在他事件頁的腳本那裡寫入Say_Something.new
點他後我們看到什麼了呢?冒出來一個寫著」 I am therefore I』m coded」的窗口.
這是為什麼呢?讓我們來一行一行地看:
class Say_Something  這裡我們創建了一個叫Say_Something 的class (類)
def initialize  這裡我們定義了一種新的方法叫Initialize (初始化)
print 「I am therefore I』m coded」 我們增加了當」initialize」的方法被調用時執行的東西
兩個end是語法

我們再進一步學習:
「initialize」 是一種默認的方法,當你在事件中調用腳本時候執行. 腳本語句」Say_Something.new」 你用」new」的信息命令 RMXP 來創建Say_Something的對象
關於end:
哪些詞語需要用end來結束呢?看看這個.是不是清楚了點呢?:

2樓 蓝晶の骑士 2011-2-10 23:39
好了,我們回頭看看事件頁寫的那行」 Say_Something.new」 ,注意到了嗎, 它前面沒有寫對象, 我們可以試著改為」 my_object = Say_Something.new」 , 效果是一樣的,不過心裡舒坦了點吧…….這是為什麼呢???
這裡我們創建了一個新的目標對象叫」my_object」 ,它應該是在」Say_Something」這個class里的,但是我們開頭那個」Say_Something 「,除了一條信息外空空如也..所以我們沒必要在事件那裡多一個對象.

那麼,我們來給這個空空如也的」Say_Something 「類多點什麼吧!
重新替換開頭那行腳本為:
class Say_Something 
attr_accessor :greeting 
attr_accessor :name 
 def initialize(greeting, name) 
 @greeting=greeting 
 @name=name 
 end 
 def say 
 print @greeting + 「 「 + @name 
 end 
end 
然後在那個npc事件腳本里重新寫為:
message1=Say_Something.new(「Hello」, 「Alex」) 
message2=Say_Something.new(「Hello」, 「Peter」) 
print message1.name 
print message2.name 
message1.say 
message2.say 

執行看,是不是華麗多了?我們看到4個冒出來的窗口.分別顯示」Alex」,」Peter」,」Hello Alex」和」Hello Peter」
這裡我們創建了兩個目標」message1」和」message2」他們都依靠」Say_Something」類,就像第一講里那個汽車廠的例子一樣,改變一個是不會影響另一個的.
那麼他是如何運行的呢?請看第三講.

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張
©2010-2025 Purasbar Ver3.0 [手機版] [桌面版]
除非另有聲明,本站採用知識共享署名-相同方式共享 3.0 Unported許可協議進行許可。