2012-04-08 70 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