注意: 此功能目前在封闭测试阶段,它将无法正常工作,除非你的游戏是在测试计划中。如果你觉得你是一个很好的测试此功能的候选人,那么 请告诉我们

Chat Integration API

此客户端API允许你的游戏进行互动交流Kongregate聊天开辟了自定义选项卡,你可以控制客户端。

概览

聊天API,可以显示Kongregate制表聊天。此标签是分为两个组成部分。上半,或“画布”上,可以得出,包括文字,图片各种技术,并支持绘图API AS2。下半部分,所谓的“对话”,是聊天式的消息显示,耳语等使用

画布

画布是由显示对象的不同类型。这些基本上是命名的影片,可与图像,文字,艺术或自定义使用绘图API的砷含量创建剪辑。在画布上支持了定位和布局选项允许您自定义画布您认为合适的范围。您还可以控制多大的画布,并可以查询的画布大小的API。

对话

这种对话应该熟悉的人谁使用了Kongregate。它允许用户在聊天输入类型,以及接收来自其他用户的信息,以及诸如挑战公告的一般信息。聊天API,可以显示用户的这一对话自定义消息。这是用来执行“匹配聊天鲲崖,Zening,营,Skystone等”当游戏比赛的SWF收到你的对手聊天消息时,它使用API来聊天,在聊天显示该邮件。您也可以添加一个事件监听器收到任何消息,用户在聊天中提出副本。

访问API

一旦你的Kongregate API在你的游戏加载,您可以访问聊天引用您的聊天对象的成员Kongregate API的功能。

API Functions

显示自定义选项卡

此功能显示在聊天区,这将取代任何其他自定义选项卡可能显示自定义选项卡。这需要一个。名称描述选择name 参数是将要在标签上体现出来的名称。 该说明会显示在该标签在更广阔的空间。选项对象可能包含的是0.5的默认大小领域,这是一个介于0和1表示的大小你希望画布是十进制,例如:

showTab(name:String,description:String,options:Object):void
  • •名称:字符串 - 的标签名称
  • •说明:字符串 - 在标签说明
  • •选项:对象 - 标签选项:
    • O大小:编号 - 相对大小的画布,0是最小的,1是最大的(默认值0.5)

例如: 显示一个大帆布自定义标签

kongregate.chat.showTab("MyTab","My Custom Tab",{size:0.75});

关闭标签

当你想关闭标签,您可以使用closeTab功能。

closeTab():void
kongregate.chat.closeTab();

显示文字聊天

显示聊天文本可以做的displayMessage功能,需要一个消息和一个用户名。该消息是你希望的信息显示,而用户名是用户想要的信息,将展出。

displayMessage(message:String,username:String):void
  • • 消息:String - 要显示的信息
  • • 用户名:String - 要用户的信息应该来自

例如:显示一条消息:“吃了吗?”从用户“BenV”

kongregate.chat.displayMessage("Hi there!","BenV");

清除聊天对话

你可以在聊天明确使用:clearMessages对话功能的所有邮件:

clearMessages():void
kongregate.chat.clearMessages();

画布对象定位

在您可以显示一个画布对象,你必须知道如何定位十分恰当。位置对象的对象只是实例可以说明情况的各种属性的元素应显示。该对象可以有许多不同的特性,并非所有这些都是每个元素类型的支持:

  x - X offset
  y - Y offset
  w - Width of the object
  h - Height of the object
  parent - Name of the parent object, if any
  align - Alignment of the object relative to its parent (if any)
          Legal values are "tl","t","tr","r","br","b","bl","l", "c" 
          (top left, top, top right, right, bottom right, bottom, 
          bottom left, left, and center, respectively)

画布大小

画布的大小可以用getCanvasSize检索功能。它返回一个对象,有宽度高度的元素。此功能只适用tab_visible事件后,已为您的卡被解雇。

getCanvasSize():Object
var size:Object = kongregate.chat.getCanvasSize();
trace("Width: " + size.width + ", Height:" + size.height);

图像显示画布

您可以加载到从外部源画布使用displayCanvasImage函数的图像。这需要一个名称网址位置的对象:

displayCanvasImage(name:String,url:String,pos:Object):void
  • •名称:字符串 - 图片的对象的名称
  • •网址:字符串 - 的图片网址加载
  • •名次:对象 - 定位对象,如上所述

例如: 加载图像和100100显示它在画布上

var url:String = "http://www.fake.com/picture.jpg";
var position:Object = {x:100,y:100};
kongregate.chat.displayCanvasImage("Image", url, position);

画布显示文本

您可以显示在与displayCanvasText功能画布文本。这需要的名称文字位置,以及选择对象,它可能包含在一个AS3 TextFormat对象的任何字段。

displayCanvasText(name:String,text:String,pos:Object,options:Object):void
  • •名称:字符串 - 文本对象的名称
  • •文本:String - 要显示的文本
  • •名次:对象 - 对象的位置,如上所述
  • •选项:对象 - 从AS3 TextFormat对象的任何领域

例如:显示文本“Testing123 0,0”在大小12使用的“黑体”字体。

var position:Object = {x:0,y:0};
var options:Object = {font:"Verdana",size:12,color:0x7FB7FF};
kongregate.chat.displayCanvastext("Text", "Testing123", position, options);

绘制自定义形状

您可以使用drawCanvasObject功能使用的绘图API AS2的任何方法,以创建一个自定义的图形形状。此函数接受一个名称,以及绘图操作,必须来自此列表列表:

 beginFill()
 beginGradientFill()
 clear()
 curveTo()
 endFill()
 lineTo()
 lineStyle()
 moveTo()
 drawRect()
 drawRoundRect()
 drawCircle()
 drawEllipse()
drawCanvasObject(name:String,operations:Array):void
  • •名称:String - 要的对象的名称
  • •业务:阵列 - 绘画操作执行,从上面的列表

例如:绘制一个框使用drawCanvasObject函数

 var commands:Array = [
            ["beginFill",0x333333,100],
            ["moveTo",25,25],
            ["lineTo",75,25],
            ["lineTo",75,75],
            ["lineTo",25,75],
            ["lineTo",25,25],
            ["endFill"] ];
 kongregate.chat.drawCanvasObject("box",commands);

请注意,不像其他的显示操作,绘制到一个已经存在的对象,不会取代它,而是将利用现有的对象上。

删除一个画布对象

您可以删除与removeCanvasObject功能,接受对象的名称,以消除任何画布对象:

removeCanvasObject(name:String):void
  • 名称:String - 要的对象的名称删除

例如:删除名为“MyObject来的对象”

kongregate.chat.removeCanvasObject("MyObject");

事件

你可以使用标准的addEventListener 函数听取由聊天的播放各种活动。 该tab_visible事件时showTab广播请求完成和自定义选项创建:

The tab_visible event is broadcast when a showTab request is completed and the custom tab is created:

kongregate.chat.addEventListener("tab_visible",onTabShown);
function onTabShown(event:Event){
  trace("Tab shown!");
}

消息的事件是广播当玩家输入的东西在聊天窗口和印刷机的回报。该事件不仅包含一个数据字段,您可以使用获得的文本输入了:

kongregate.chat.addEventListener("message",onPlayerMessage);
function onPlayerMessage(event:*){
  trace("Message: " + event.data.text);
}

Edit | Translate | Destroy