2012-04-08 69 views
1

我有一個主菜單和一個遊戲,加載爲一個單獨的swf從該菜單。到目前爲止,當玩家在主菜單的開始處輸入他們的名字時,我可以將這個名字發佈到Twitter。當玩家完成遊戲時,我會將他們的時間發佈到Twitter上。從AS3發佈到Twitter

問題是,我想從主菜單中發佈名稱併發送它,並且只有當玩家完成遊戲後將其時間和名稱發佈到Twitter。在遊戲

[CODE] 
var NameTextField:TextField = new TextField(); 
var MyFormat:TextFormat = new TextFormat(); 

addChild(NameTextField); 


SubmitButton.addEventListener(MouseEvent.CLICK, SubmitClicked); 


function SubmitClicked(e:MouseEvent) 
{ 
    dispatchEvent(new Event(NameTextField.text, true)); 
    trace (NameTextField.text); 
    NameTextField.selectable = false; 
} 
[/CODE] 

代碼,即可獲得名稱和發佈時間嘰嘰喳喳:

代碼在主菜單派遣名稱。

[CODE] 
navigateToURL(new URLRequest('http://twitter.com/home?status='+encodeURIComponent(+NameTextField.text+" completed Game"+' in a time of '+HourText.text+':'+MinuteText.text+':'+SecondText.text+'')),'_blank'); 
[/CODE] 
+0

所有你需要做的時候,玩家輸入他們的名字,只要把值保存在某個地方;無論它是一個對象,一個靜態變量,一個本地共享對象等。這與持有任何其他信息沒有什麼不同。而不是在'SubmitClicked'中調度事件,將'NameTextField.text'存儲在一個變量中,並在'navigateToURL'代碼中使用該變量 – divillysausages 2012-04-09 14:00:53

回答

0

我承擔你有推特認證已經照顧..

因此,當用戶在主菜單上輸入名稱,您可以將名稱保存到JavaScript保存全局變量像

var name = "some name"; 

,當用戶完成在JS打

ExternalInterface.call('getName'.. 

,你應該有一個像

功能的getName()函數返回{名來自AS3調用ExternalInterface的; }

+0

嘿對不起,在AS3中沒有任何JS知識。不知道這是否與JS一起工作? – Ant 2012-04-08 15:59:23

+0

你不需要太多的JS知識這個..只需聲明一個像我這樣的變量..並分配你的名字到那個變量..並且創建一個函數'function getName()return nameVariable; '並從AS3打電話給 – Kamal 2012-04-08 16:01:08

+0

對不起,上面的代碼都混淆了閃存? var TextFieldName =「InputName」; 和繼續按鈕,我會把: ExternalInterface.call('InputName'); ?? – Ant 2012-04-08 17:35:45

2

爲了發佈到twitter你需要通過身份驗證。

我建議你通過丹尼斯·鮑裏先科使用現有的API像Tweetr通過swfjunkie_com或Twitter的ActionScript的API

檢查這篇文章的示例代碼和更多細節

http://www.redcodelabs.com/2012/02/actionscript3-twitter-api/

+0

已經有AS3向Twitter發佈了名稱和時間。當在主菜單中輸入姓名並在遊戲中輸入時間時,問題是將它們張貼在一起。 – Ant 2012-04-08 16:02:45