Re: Question traduction
miniteck27140 a dit : "Ok merci tifoux,
Cela m'aide un peut,
Mais par exemple pour des packet ou il faut write par exemple pour up un sort alors on traduit que serialize ?
Ps : The-Falcon MP envoyer"
J'ai pas encore essayer mais je pense c'est possible sans class vue qu'on envoi de la meme manière.
exemple :
pour envoyé un message dans n'autre class il nous fait 1 class + un Inherits
code qu'on prépare :
as :
package com.ankamagames.dofus.network.messages.game.chat
{
import flash.utils.*;
public class ChatClientMultiMessage extends ChatAbstractClientMessage implements INetworkMessage
{
private var _isInitialized:Boolean = false;
public var channel:uint = 0;
public static const protocolId:uint = 861;
public function ChatClientMultiMessage()
{
return;
}// end function
override public function get isInitialized() : Boolean
{
return super.isInitialized && this._isInitialized;
}// end function
override public function getMessageId() : uint
{
return 861;
}// end function
public function initChatClientMultiMessage(param1:String = "", param2:uint = 0) : ChatClientMultiMessage
{
super.initChatAbstractClientMessage(param1);
this.channel = param2;
this._isInitialized = true;
return this;
}// end function
override public function reset() : void
{
super.reset();
this.channel = 0;
this._isInitialized = false;
return;
}// end function
override public function pack(param1:IDataOutput) : void
{
var _loc_2:* = new ByteArray();
this.serialize(_loc_2);
writePacket(param1, this.getMessageId(), _loc_2);
return;
}// end function
override public function unpack(param1:IDataInput, param2:uint) : void
{
this.deserialize(param1);
return;
}// end function
override public function serialize(param1:IDataOutput) : void
{
this.serializeAs_ChatClientMultiMessage(param1);
return;
}// end function
public function serializeAs_ChatClientMultiMessage(param1:IDataOutput) : void
{
super.serializeAs_ChatAbstractClientMessage(param1);
param1.writeByte(this.channel);
return;
}// end function
override public function deserialize(param1:IDataInput) : void
{
this.deserializeAs_ChatClientMultiMessage(param1);
return;
}// end function
public function deserializeAs_ChatClientMultiMessage(param1:IDataInput) : void
{
super.deserialize(param1);
this.channel = param1.readByte();
if (this.channel < 0)
{
throw new Error("Forbidden value (" + this.channel + ") on element of ChatClientMultiMessage.channel.");
}
return;
}// end function
}
}
extends ChatAbstractClientMessage ;
package com.ankamagames.dofus.network.messages.game.chat
{
import com.ankamagames.jerakine.network.*;
import flash.utils.*;
public class ChatAbstractClientMessage extends NetworkMessage implements INetworkMessage
{
private var _isInitialized:Boolean = false;
public var content:String = "";
public static const protocolId:uint = 850;
public function ChatAbstractClientMessage()
{
return;
}// end function
override public function get isInitialized() : Boolean
{
return this._isInitialized;
}// end function
override public function getMessageId() : uint
{
return 850;
}// end function
public function initChatAbstractClientMessage(param1:String = "") : ChatAbstractClientMessage
{
this.content = param1;
this._isInitialized = true;
return this;
}// end function
override public function reset() : void
{
this.content = "";
this._isInitialized = false;
return;
}// end function
override public function pack(param1:IDataOutput) : void
{
var _loc_2:* = new ByteArray();
this.serialize(_loc_2);
writePacket(param1, this.getMessageId(), _loc_2);
return;
}// end function
override public function unpack(param1:IDataInput, param2:uint) : void
{
this.deserialize(param1);
return;
}// end function
public function serialize(param1:IDataOutput) : void
{
this.serializeAs_ChatAbstractClientMessage(param1);
return;
}// end function
public function serializeAs_ChatAbstractClientMessage(param1:IDataOutput) : void
{
param1.writeUTF(this.content);
return;
}// end function
public function deserialize(param1:IDataInput) : void
{
this.deserializeAs_ChatAbstractClientMessage(param1);
return;
}// end function
public function deserializeAs_ChatAbstractClientMessage(param1:IDataInput) : void
{
this.content = param1.readUTF();
return;
}// end function
}
}
ma traduction :
Namespace Tempest.Dofus.Packet.Game.Tchat
Public Class ChatClientMultiMessage
Inherits ChatAbstractClientMessage
Public Overrides Property channel As UInteger = 0
Public Overrides Property protocolId As UInteger = 861
Public Function Ini(ByVal message As String, ByVal chanel As Byte)
MyBase.Ini(message)
channel = chanel
Return Me
End Function
Public Function pack(ByVal Sock As System.Net.Sockets.Socket)
Dim writer As New DofusWriter(Sock)
Me.serialize(writer)
DofusWriter.Send(protocolId)
Return Me
End Function
Public Overrides Function serialize(ByVal writer As DofusWriter)
MyBase.serialize(writer)
writer.WriteByte(channel)
Return Me
End Function
End Class
End Namespace
Namespace Tempest.Dofus.Packet.Game.Tchat
Public Class ChatAbstractClientMessage
Public Overridable Property channel As UInteger = 0
Public Overridable Property content As String = ""
Public Overridable Property protocolId As UInteger = 880
Public Function Ini(ByVal message As String)
content = message
Return Me
End Function
Public Overridable Function serialize(ByVal writer As DofusWriter)
writer.WriteUTF(content)
Return Me
End Function
End Class
End Namespace
si on analyse bien le packet a envoyé sa démarche sa sera sa :
en principe on devrait procéder comme ça :
Dim tchat As New ChatClientMultiMessage()
tchat.Ini("Message", 0) ' on prépare le packet avec le message et le channel
tchat.pack(_socket_Jeu) ' on envois tous sa
on peut peut être tous simplement faire comme sa :
Dim writer As New DofusWriter(_socket_Jeu)
writer.WriteUTF("Message")
writer.WriteByte(0)
DofusWriter.Send(861)
pour te répondre oui si tu veux up un sort tu peux traduit que le serialize ou essayer la methode ci-dessus.
la fonction ci-dessus n'a pas été tester.
j'espère t'avoir aider.