Consumables final adjusments before the split seasonal and offseason.
This commit is contained in:
parent
8230e98543
commit
98a050cc89
@ -695,9 +695,9 @@ namespace DiIiS_NA.GameServer.CommandManager
|
|||||||
return String.Format("Message sended.");
|
return String.Format("Message sended.");
|
||||||
}
|
}
|
||||||
|
|
||||||
return matches.Aggregate(matches.Count >= 1 ? "Actor Matches:\n" : "No match found.",
|
//return matches.Aggregate(matches.Count >= 1 ? "Actor Matches:\n" : "No match found.",
|
||||||
(current, match) => current +
|
//(current, match) => current +
|
||||||
$"[{match.SNOId.ToString("D6")}] {match.Name} ({(match.Data as DiIiS_NA.Core.MPQ.FileFormats.Actor).Type} {(((match.Data as DiIiS_NA.Core.MPQ.FileFormats.Actor).Type == ActorType.Gizmo) ? ((int)(match.Data as DiIiS_NA.Core.MPQ.FileFormats.Actor).TagMap[ActorKeys.GizmoGroup]).ToString() : "")})\n");
|
// $"[{match.SNOId.ToString("D6")}] {match.Name} ({(match.Data as DiIiS_NA.Core.MPQ.FileFormats.Actor).Type} {(((match.Data as DiIiS_NA.Core.MPQ.FileFormats.Actor).Type == ActorType.Gizmo) ? ((int)(match.Data as DiIiS_NA.Core.MPQ.FileFormats.Actor).TagMap[ActorKeys.GizmoGroup]).ToString() : "")})\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
[CommandGroup("lookup",
|
[CommandGroup("lookup",
|
||||||
|
|||||||
@ -872,12 +872,12 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
|
|||||||
public override void OnTargeted(Player player, TargetMessage message)
|
public override void OnTargeted(Player player, TargetMessage message)
|
||||||
{
|
{
|
||||||
player.Inventory.RefreshInventoryToClient();
|
player.Inventory.RefreshInventoryToClient();
|
||||||
//var playerAcc = player.InGameClient.BnetClient.Account.GameAccount;
|
var playerAcc = player.InGameClient.BnetClient.Account.GameAccount;
|
||||||
switch (this.SNO)
|
switch (SNO)
|
||||||
{
|
{
|
||||||
case ActorSno._tieredlootrunkey_0:
|
case ActorSno._tieredlootrunkey_0:
|
||||||
player.Toon.GameAccount.BigPortalKey++;
|
playerAcc.BigPortalKey++;
|
||||||
this.Destroy();
|
Destroy();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
player.Inventory.PickUp(this);
|
player.Inventory.PickUp(this);
|
||||||
@ -885,7 +885,6 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
|
|||||||
}
|
}
|
||||||
|
|
||||||
var Moneys = D3.Items.CurrencySavedData.CreateBuilder();
|
var Moneys = D3.Items.CurrencySavedData.CreateBuilder();
|
||||||
var playerAcc = player.InGameClient.BnetClient.Account.GameAccount;
|
|
||||||
D3.Items.CurrencyData GoldData = D3.Items.CurrencyData.CreateBuilder().SetId(0).SetCount((long)player.Inventory.GetGoldAmount()).Build();
|
D3.Items.CurrencyData GoldData = D3.Items.CurrencyData.CreateBuilder().SetId(0).SetCount((long)player.Inventory.GetGoldAmount()).Build();
|
||||||
D3.Items.CurrencyData BloodShardData = D3.Items.CurrencyData.CreateBuilder().SetId(1).SetCount(playerAcc.BloodShards).Build();
|
D3.Items.CurrencyData BloodShardData = D3.Items.CurrencyData.CreateBuilder().SetId(1).SetCount(playerAcc.BloodShards).Build();
|
||||||
D3.Items.CurrencyData PlatinumData = D3.Items.CurrencyData.CreateBuilder().SetId(2).SetCount(playerAcc.Platinum).Build();
|
D3.Items.CurrencyData PlatinumData = D3.Items.CurrencyData.CreateBuilder().SetId(2).SetCount(playerAcc.Platinum).Build();
|
||||||
@ -909,24 +908,12 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
|
|||||||
|
|
||||||
D3.Items.CurrencyData Craft7Data = D3.Items.CurrencyData.CreateBuilder().SetId(20).SetCount(playerAcc.BigPortalKey).Build(); // KeyStone Greater Rift.
|
D3.Items.CurrencyData Craft7Data = D3.Items.CurrencyData.CreateBuilder().SetId(20).SetCount(playerAcc.BigPortalKey).Build(); // KeyStone Greater Rift.
|
||||||
|
|
||||||
Moneys.AddCurrency(GoldData);
|
object[] consumables = {GoldData, BloodShardData, PlatinumData, Craft1Data, Craft2Data, Craft3Data, Craft4Data, Craft5Data, Craft7Data, Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data, Craft8Data, Craft9Data, Craft10Data, Craft11Data};
|
||||||
Moneys.AddCurrency(BloodShardData);
|
|
||||||
Moneys.AddCurrency(PlatinumData);
|
foreach (object consumable in consumables)
|
||||||
Moneys.AddCurrency(Craft1Data);
|
{
|
||||||
Moneys.AddCurrency(Craft2Data);
|
Moneys.AddCurrency(consumable);
|
||||||
Moneys.AddCurrency(Craft3Data);
|
}
|
||||||
Moneys.AddCurrency(Craft4Data);
|
|
||||||
Moneys.AddCurrency(Craft5Data);
|
|
||||||
Moneys.AddCurrency(Craft7Data);
|
|
||||||
Moneys.AddCurrency(Horadric1Data);
|
|
||||||
Moneys.AddCurrency(Horadric2Data);
|
|
||||||
Moneys.AddCurrency(Horadric3Data);
|
|
||||||
Moneys.AddCurrency(Horadric4Data);
|
|
||||||
Moneys.AddCurrency(Horadric5Data);
|
|
||||||
Moneys.AddCurrency(Craft8Data);
|
|
||||||
Moneys.AddCurrency(Craft9Data);
|
|
||||||
Moneys.AddCurrency(Craft10Data);
|
|
||||||
Moneys.AddCurrency(Craft11Data);
|
|
||||||
|
|
||||||
player.InGameClient.SendMessage(new MessageSystem.Message.Definitions.Base.GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
|
player.InGameClient.SendMessage(new MessageSystem.Message.Definitions.Base.GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
|
||||||
|
|
||||||
@ -1029,24 +1016,13 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
|
|||||||
|
|
||||||
D3.Items.CurrencyData Craft7Data = D3.Items.CurrencyData.CreateBuilder().SetId(20).SetCount(playerAcc.BigPortalKey).Build(); // KeyStone Greater Rift.
|
D3.Items.CurrencyData Craft7Data = D3.Items.CurrencyData.CreateBuilder().SetId(20).SetCount(playerAcc.BigPortalKey).Build(); // KeyStone Greater Rift.
|
||||||
|
|
||||||
Moneys.AddCurrency(GoldData);
|
object[] consumables = {GoldData, BloodShardData, PlatinumData, Craft1Data, Craft2Data, Craft3Data, Craft4Data, Craft5Data, Craft7Data, Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data, Craft8Data, Craft9Data, Craft10Data, Craft11Data};
|
||||||
Moneys.AddCurrency(BloodShardData);
|
|
||||||
Moneys.AddCurrency(PlatinumData);
|
foreach (object consumable in consumables)
|
||||||
Moneys.AddCurrency(Craft1Data);
|
{
|
||||||
Moneys.AddCurrency(Craft2Data);
|
Moneys.AddCurrency(consumable);
|
||||||
Moneys.AddCurrency(Craft3Data);
|
}
|
||||||
Moneys.AddCurrency(Craft4Data);
|
|
||||||
Moneys.AddCurrency(Craft5Data);
|
|
||||||
Moneys.AddCurrency(Craft7Data);
|
|
||||||
Moneys.AddCurrency(Horadric1Data);
|
|
||||||
Moneys.AddCurrency(Horadric2Data);
|
|
||||||
Moneys.AddCurrency(Horadric3Data);
|
|
||||||
Moneys.AddCurrency(Horadric4Data);
|
|
||||||
Moneys.AddCurrency(Horadric5Data);
|
|
||||||
Moneys.AddCurrency(Craft8Data);
|
|
||||||
Moneys.AddCurrency(Craft9Data);
|
|
||||||
Moneys.AddCurrency(Craft10Data);
|
|
||||||
Moneys.AddCurrency(Craft11Data);
|
|
||||||
#endregion
|
#endregion
|
||||||
switch (GBHandle.GBID)
|
switch (GBHandle.GBID)
|
||||||
{
|
{
|
||||||
@ -1148,15 +1124,17 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
|
|||||||
player.World.SpawnBloodShards(player, player, RandomHelper.Next(10, 25));
|
player.World.SpawnBloodShards(player, player, RandomHelper.Next(10, 25));
|
||||||
break;
|
break;
|
||||||
#endregion
|
#endregion
|
||||||
default:
|
default:
|
||||||
Logger.Warn("This treasure bag - not implemented"); break;
|
Logger.Warn("This treasure bag - not implemented"); break;
|
||||||
}
|
}
|
||||||
Craft4Data = D3.Items.CurrencyData.CreateBuilder().SetId(6).SetCount(playerAcc.CraftItem4).Build();
|
Craft4Data = D3.Items.CurrencyData.CreateBuilder().SetId(6).SetCount(playerAcc.CraftItem4).Build();
|
||||||
Moneys.AddCurrency(Horadric1Data);
|
|
||||||
Moneys.AddCurrency(Horadric2Data);
|
object[] HoradricBoxes = {Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data};
|
||||||
Moneys.AddCurrency(Horadric3Data);
|
foreach (object HoradricBoxe in HoradricBoxes)
|
||||||
Moneys.AddCurrency(Horadric4Data);
|
{
|
||||||
Moneys.AddCurrency(Horadric5Data);
|
Moneys.AddCurrency(HoradricBoxe);
|
||||||
|
}
|
||||||
|
|
||||||
player.InGameClient.SendMessage(new MessageSystem.Message.Definitions.Base.GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
|
player.InGameClient.SendMessage(new MessageSystem.Message.Definitions.Base.GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
|
||||||
|
|
||||||
player.Inventory.DestroyInventoryItem(this);
|
player.Inventory.DestroyInventoryItem(this);
|
||||||
|
|||||||
@ -2332,24 +2332,12 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
|
|||||||
|
|
||||||
D3.Items.CurrencyData Craft7Data = D3.Items.CurrencyData.CreateBuilder().SetId(20).SetCount(playerAcc.BigPortalKey).Build(); // KeyStone Greater Rift.
|
D3.Items.CurrencyData Craft7Data = D3.Items.CurrencyData.CreateBuilder().SetId(20).SetCount(playerAcc.BigPortalKey).Build(); // KeyStone Greater Rift.
|
||||||
|
|
||||||
Moneys.AddCurrency(GoldData);
|
object[] consumables = {GoldData, BloodShardData, PlatinumData, Craft1Data, Craft2Data, Craft3Data, Craft4Data, Craft5Data, Craft7Data, Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data, Craft8Data, Craft9Data, Craft10Data, Craft11Data};
|
||||||
Moneys.AddCurrency(BloodShardData);
|
|
||||||
Moneys.AddCurrency(PlatinumData);
|
foreach (object consumable in consumables)
|
||||||
Moneys.AddCurrency(Craft1Data);
|
{
|
||||||
Moneys.AddCurrency(Craft2Data);
|
Moneys.AddCurrency(consumable);
|
||||||
Moneys.AddCurrency(Craft3Data);
|
}
|
||||||
Moneys.AddCurrency(Craft4Data);
|
|
||||||
Moneys.AddCurrency(Craft5Data);
|
|
||||||
Moneys.AddCurrency(Craft7Data);
|
|
||||||
Moneys.AddCurrency(Horadric1Data);
|
|
||||||
Moneys.AddCurrency(Horadric2Data);
|
|
||||||
Moneys.AddCurrency(Horadric3Data);
|
|
||||||
Moneys.AddCurrency(Horadric4Data);
|
|
||||||
Moneys.AddCurrency(Horadric5Data);
|
|
||||||
Moneys.AddCurrency(Craft8Data);
|
|
||||||
Moneys.AddCurrency(Craft9Data);
|
|
||||||
Moneys.AddCurrency(Craft10Data);
|
|
||||||
Moneys.AddCurrency(Craft11Data);
|
|
||||||
|
|
||||||
_owner.InGameClient.SendMessage(new GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
|
_owner.InGameClient.SendMessage(new GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
|
||||||
}
|
}
|
||||||
@ -2362,7 +2350,7 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
|
|||||||
|
|
||||||
public void RemoveBloodShardsAmount(int amount)
|
public void RemoveBloodShardsAmount(int amount)
|
||||||
{
|
{
|
||||||
this.BloodShards -= amount;
|
this.BloodShards -= amount;
|
||||||
_owner.Toon.GameAccount.BloodShards -= amount;
|
_owner.Toon.GameAccount.BloodShards -= amount;
|
||||||
UpdateCurrencies();
|
UpdateCurrencies();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2487,7 +2487,7 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
|
|||||||
Attributes[GameAttribute.Corpse_Resurrection_Charges] = 3; // Reset resurrection charges on zone change (TODO: do not reset charges on reentering the same zone)
|
Attributes[GameAttribute.Corpse_Resurrection_Charges] = 3; // Reset resurrection charges on zone change (TODO: do not reset charges on reentering the same zone)
|
||||||
|
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
Logger.Warn("Player Location {0}, Scene: {1} SNO: {2} LevelArea: {3}", this.Toon.Name, this.CurrentScene.SceneSNO.Name, this.CurrentScene.SceneSNO.Id, this.CurrentScene.Specification.SNOLevelAreas[0]);
|
Logger.Warn("Player Location {0}, Scene: {1} SNO: {2} LevelArea: {3}", Toon.Name, CurrentScene.SceneSNO.Name, CurrentScene.SceneSNO.Id, CurrentScene.Specification.SNOLevelAreas[0]);
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -2964,8 +2964,8 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
|
|||||||
// Check the gold
|
// Check the gold
|
||||||
if (InGameClient.Game.TickCounter % 120 == 0 && World != null && GoldCollectedTempCount > 0)
|
if (InGameClient.Game.TickCounter % 120 == 0 && World != null && GoldCollectedTempCount > 0)
|
||||||
{
|
{
|
||||||
this.Toon.GameAccount.Gold += (ulong)this.GoldCollectedTempCount;
|
Toon.GameAccount.Gold += (ulong)GoldCollectedTempCount;
|
||||||
this.Toon.CollectedGold += (ulong)this.GoldCollectedTempCount;
|
Toon.CollectedGold += (ulong)GoldCollectedTempCount;
|
||||||
|
|
||||||
if (World.Game.IsHardcore)
|
if (World.Game.IsHardcore)
|
||||||
Toon.CollectedGoldSeasonal += GoldCollectedTempCount;
|
Toon.CollectedGoldSeasonal += GoldCollectedTempCount;
|
||||||
@ -2978,9 +2978,9 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
|
|||||||
// Check the blood shards
|
// Check the blood shards
|
||||||
if (InGameClient.Game.TickCounter % 120 == 0 && World != null && BloodShardsCollectedTempCount > 0)
|
if (InGameClient.Game.TickCounter % 120 == 0 && World != null && BloodShardsCollectedTempCount > 0)
|
||||||
{
|
{
|
||||||
this.Toon.GameAccount.BloodShards += this.BloodShardsCollectedTempCount;
|
Toon.GameAccount.BloodShards += BloodShardsCollectedTempCount;
|
||||||
this.Toon.GameAccount.TotalBloodShards += this.BloodShardsCollectedTempCount;
|
Toon.GameAccount.TotalBloodShards += BloodShardsCollectedTempCount;
|
||||||
this.BloodShardsCollectedTempCount = 0;
|
BloodShardsCollectedTempCount = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (World != null && SkillSet.HasPassive(298038) && (InGameClient.Game.TickCounter - LastMovementTick) > 90)
|
if (World != null && SkillSet.HasPassive(298038) && (InGameClient.Game.TickCounter - LastMovementTick) > 90)
|
||||||
@ -3098,19 +3098,19 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
|
|||||||
{
|
{
|
||||||
if (KilledMonstersTempCount != 0)
|
if (KilledMonstersTempCount != 0)
|
||||||
{
|
{
|
||||||
this.Toon.TotalKilled += (ulong)this.KilledMonstersTempCount;
|
Toon.TotalKilled += (ulong)KilledMonstersTempCount;
|
||||||
this.KilledMonstersTempCount = 0;
|
KilledMonstersTempCount = 0;
|
||||||
|
|
||||||
if (KilledElitesTempCount != 0)
|
if (KilledElitesTempCount != 0)
|
||||||
{
|
{
|
||||||
this.Toon.ElitesKilled += (ulong)this.KilledElitesTempCount;
|
Toon.ElitesKilled += (ulong)KilledElitesTempCount;
|
||||||
this.KilledElitesTempCount = 0;
|
KilledElitesTempCount = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (KilledSeasonalTempCount != 0)
|
if (KilledSeasonalTempCount != 0)
|
||||||
{
|
{
|
||||||
this.Toon.SeasonalKills += this.KilledSeasonalTempCount;
|
Toon.SeasonalKills += KilledSeasonalTempCount;
|
||||||
this.KilledSeasonalTempCount = 0;
|
KilledSeasonalTempCount = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -805,22 +805,22 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
//StartConversation(this.Target.World, 340878);
|
//StartConversation(this.Target.World, 340878);
|
||||||
var HubWorld = this.Target.World.Game.GetWorld(WorldSno.x1_tristram_adventure_mode_hub);
|
var hubWorld = this.Target.World.Game.GetWorld(WorldSno.x1_tristram_adventure_mode_hub);
|
||||||
var Orek = (HubWorld.GetActorBySNO(ActorSno._x1_lr_nephalem) as InteractiveNPC);
|
var orek = (hubWorld.GetActorBySNO(ActorSno._x1_lr_nephalem) as InteractiveNPC);
|
||||||
Orek.Conversations.Add(new ActorSystem.Interactions.ConversationInteraction(340878));
|
orek.Conversations.Add(new ActorSystem.Interactions.ConversationInteraction(340878));
|
||||||
Orek.ForceConversationSNO = 340878;
|
orek.ForceConversationSNO = 340878;
|
||||||
Orek.Attributes[GameAttribute.Conversation_Icon, 0] = 2;
|
orek.Attributes[GameAttribute.Conversation_Icon, 0] = 2;
|
||||||
Orek.Attributes[GameAttribute.Conversation_Icon, 1] = 2;
|
orek.Attributes[GameAttribute.Conversation_Icon, 1] = 2;
|
||||||
Orek.Attributes[GameAttribute.Conversation_Icon, 2] = 2;
|
orek.Attributes[GameAttribute.Conversation_Icon, 2] = 2;
|
||||||
Orek.Attributes[GameAttribute.Conversation_Icon, 3] = 2;
|
orek.Attributes[GameAttribute.Conversation_Icon, 3] = 2;
|
||||||
Orek.Attributes.BroadcastChangedIfRevealed();
|
orek.Attributes.BroadcastChangedIfRevealed();
|
||||||
//Уникальный спавн
|
// Unique spawn
|
||||||
this.Target.World.SpawnBloodShards(this.Target, plr, RandomHelper.Next(10, 30));
|
Target.World.SpawnBloodShards(Target, plr, RandomHelper.Next(10, 30));
|
||||||
this.Target.World.SpawnGold(this.Target, plr);
|
Target.World.SpawnGold(Target, plr);
|
||||||
this.Target.World.SpawnGold(this.Target, plr);
|
Target.World.SpawnGold(Target, plr);
|
||||||
this.Target.World.SpawnGold(this.Target, plr);
|
Target.World.SpawnGold(Target, plr);
|
||||||
plr.Toon.GameAccount.BigPortalKey++;
|
plr.Toon.GameAccount.BigPortalKey++;
|
||||||
this.Target.World.Game.ActiveNephalemProgress = 0f;
|
Target.World.Game.ActiveNephalemProgress = 0f;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -2,6 +2,7 @@
|
|||||||
#pragma warning disable 1591, 0612
|
#pragma warning disable 1591, 0612
|
||||||
#region Designer generated code
|
#region Designer generated code
|
||||||
|
|
||||||
|
using System;
|
||||||
using pb = global::Google.ProtocolBuffers;
|
using pb = global::Google.ProtocolBuffers;
|
||||||
using pbc = global::Google.ProtocolBuffers.Collections;
|
using pbc = global::Google.ProtocolBuffers.Collections;
|
||||||
using pbd = global::Google.ProtocolBuffers.Descriptors;
|
using pbd = global::Google.ProtocolBuffers.Descriptors;
|
||||||
@ -6577,7 +6578,12 @@ namespace D3.Items {
|
|||||||
result.currency_.Clear();
|
result.currency_.Clear();
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
public void AddCurrency(object consumable)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
static CurrencySavedData() {
|
static CurrencySavedData() {
|
||||||
object.ReferenceEquals(global::D3.Items.Items.Descriptor, null);
|
object.ReferenceEquals(global::D3.Items.Items.Descriptor, null);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
user.block.title