2016-06-08 22:29:04 +01:00
|
|
|
|
using System;
|
2015-09-25 18:52:25 -04:00
|
|
|
|
|
2016-08-22 10:43:04 -04:00
|
|
|
|
using FFXIVClassic.Common;
|
|
|
|
|
|
2015-09-25 18:52:25 -04:00
|
|
|
|
namespace FFXIVClassic_Map_Server.packets.send
|
|
|
|
|
{
|
|
|
|
|
class SetMusicPacket
|
|
|
|
|
{
|
|
|
|
|
public const ushort OPCODE = 0x000C;
|
|
|
|
|
public const uint PACKET_SIZE = 0x28;
|
|
|
|
|
|
2016-03-19 10:22:20 -04:00
|
|
|
|
public const ushort EFFECT_IMMEDIATE = 0x1;
|
|
|
|
|
public const ushort EFFECT_CROSSFADE = 0x2; //??
|
|
|
|
|
public const ushort EFFECT_LAYER = 0x3; //??
|
|
|
|
|
public const ushort EFFECT_FADEIN = 0x4;
|
|
|
|
|
public const ushort EFFECT_PLAY_NORMAL_CHANNEL = 0x5; //Only works for multi channeled music
|
|
|
|
|
public const ushort EFFECT_PLAY_BATTLE_CHANNEL = 0x6;
|
|
|
|
|
|
2017-06-27 13:23:05 -04:00
|
|
|
|
public static SubPacket BuildPacket(uint sourceActorId, ushort musicID, ushort musicTrackMode)
|
2015-09-25 18:52:25 -04:00
|
|
|
|
{
|
2015-10-08 00:49:31 -04:00
|
|
|
|
ulong combined = (ulong)(musicID | (musicTrackMode << 16));
|
2017-06-27 13:23:05 -04:00
|
|
|
|
return new SubPacket(OPCODE, 0, BitConverter.GetBytes(combined));
|
2015-09-25 18:52:25 -04:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|