Merge remote-tracking branch 'origin/community' into community

This commit is contained in:
Lucca Faria Ferri 2023-01-26 10:23:45 -08:00
commit 9b830e204e
5 changed files with 66 additions and 94 deletions

View File

@ -872,12 +872,12 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
public override void OnTargeted(Player player, TargetMessage message)
{
player.Inventory.RefreshInventoryToClient();
//var playerAcc = player.InGameClient.BnetClient.Account.GameAccount;
switch (this.SNO)
var playerAcc = player.InGameClient.BnetClient.Account.GameAccount;
switch (SNO)
{
case ActorSno._tieredlootrunkey_0:
player.Toon.GameAccount.BigPortalKey++;
this.Destroy();
playerAcc.BigPortalKey++;
Destroy();
break;
default:
player.Inventory.PickUp(this);
@ -885,7 +885,6 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
}
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 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();
@ -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.
Moneys.AddCurrency(GoldData);
Moneys.AddCurrency(BloodShardData);
Moneys.AddCurrency(PlatinumData);
Moneys.AddCurrency(Craft1Data);
Moneys.AddCurrency(Craft2Data);
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);
object[] consumables = {GoldData, BloodShardData, PlatinumData, Craft1Data, Craft2Data, Craft3Data, Craft4Data, Craft5Data, Craft7Data, Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data, Craft8Data, Craft9Data, Craft10Data, Craft11Data};
foreach (object consumable in consumables)
{
Moneys.AddCurrency(consumable);
}
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.
Moneys.AddCurrency(GoldData);
Moneys.AddCurrency(BloodShardData);
Moneys.AddCurrency(PlatinumData);
Moneys.AddCurrency(Craft1Data);
Moneys.AddCurrency(Craft2Data);
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);
object[] consumables = {GoldData, BloodShardData, PlatinumData, Craft1Data, Craft2Data, Craft3Data, Craft4Data, Craft5Data, Craft7Data, Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data, Craft8Data, Craft9Data, Craft10Data, Craft11Data};
foreach (object consumable in consumables)
{
Moneys.AddCurrency(consumable);
}
#endregion
switch (GBHandle.GBID)
{
@ -1152,11 +1128,13 @@ namespace DiIiS_NA.GameServer.GSSystem.ItemsSystem
Logger.Warn("This treasure bag - not implemented"); break;
}
Craft4Data = D3.Items.CurrencyData.CreateBuilder().SetId(6).SetCount(playerAcc.CraftItem4).Build();
Moneys.AddCurrency(Horadric1Data);
Moneys.AddCurrency(Horadric2Data);
Moneys.AddCurrency(Horadric3Data);
Moneys.AddCurrency(Horadric4Data);
Moneys.AddCurrency(Horadric5Data);
object[] HoradricBoxes = {Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data};
foreach (object HoradricBoxe in HoradricBoxes)
{
Moneys.AddCurrency(HoradricBoxe);
}
player.InGameClient.SendMessage(new MessageSystem.Message.Definitions.Base.GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
player.Inventory.DestroyInventoryItem(this);

View File

@ -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.
Moneys.AddCurrency(GoldData);
Moneys.AddCurrency(BloodShardData);
Moneys.AddCurrency(PlatinumData);
Moneys.AddCurrency(Craft1Data);
Moneys.AddCurrency(Craft2Data);
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);
object[] consumables = {GoldData, BloodShardData, PlatinumData, Craft1Data, Craft2Data, Craft3Data, Craft4Data, Craft5Data, Craft7Data, Horadric1Data, Horadric2Data, Horadric3Data, Horadric4Data, Horadric5Data, Craft8Data, Craft9Data, Craft10Data, Craft11Data};
foreach (object consumable in consumables)
{
Moneys.AddCurrency(consumable);
}
_owner.InGameClient.SendMessage(new GenericBlobMessage(Opcodes.CurrencyDataFull) { Data = Moneys.Build().ToByteArray() });
}

View File

@ -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)
#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
#endif
@ -2964,8 +2964,8 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
// Check the gold
if (InGameClient.Game.TickCounter % 120 == 0 && World != null && GoldCollectedTempCount > 0)
{
this.Toon.GameAccount.Gold += (ulong)this.GoldCollectedTempCount;
this.Toon.CollectedGold += (ulong)this.GoldCollectedTempCount;
Toon.GameAccount.Gold += (ulong)GoldCollectedTempCount;
Toon.CollectedGold += (ulong)GoldCollectedTempCount;
if (World.Game.IsHardcore)
Toon.CollectedGoldSeasonal += GoldCollectedTempCount;
@ -2978,9 +2978,9 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
// Check the blood shards
if (InGameClient.Game.TickCounter % 120 == 0 && World != null && BloodShardsCollectedTempCount > 0)
{
this.Toon.GameAccount.BloodShards += this.BloodShardsCollectedTempCount;
this.Toon.GameAccount.TotalBloodShards += this.BloodShardsCollectedTempCount;
this.BloodShardsCollectedTempCount = 0;
Toon.GameAccount.BloodShards += BloodShardsCollectedTempCount;
Toon.GameAccount.TotalBloodShards += BloodShardsCollectedTempCount;
BloodShardsCollectedTempCount = 0;
}
if (World != null && SkillSet.HasPassive(298038) && (InGameClient.Game.TickCounter - LastMovementTick) > 90)
@ -3098,19 +3098,19 @@ namespace DiIiS_NA.GameServer.GSSystem.PlayerSystem
{
if (KilledMonstersTempCount != 0)
{
this.Toon.TotalKilled += (ulong)this.KilledMonstersTempCount;
this.KilledMonstersTempCount = 0;
Toon.TotalKilled += (ulong)KilledMonstersTempCount;
KilledMonstersTempCount = 0;
if (KilledElitesTempCount != 0)
{
this.Toon.ElitesKilled += (ulong)this.KilledElitesTempCount;
this.KilledElitesTempCount = 0;
Toon.ElitesKilled += (ulong)KilledElitesTempCount;
KilledElitesTempCount = 0;
}
if (KilledSeasonalTempCount != 0)
{
this.Toon.SeasonalKills += this.KilledSeasonalTempCount;
this.KilledSeasonalTempCount = 0;
Toon.SeasonalKills += KilledSeasonalTempCount;
KilledSeasonalTempCount = 0;
}
}

View File

@ -805,22 +805,22 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads
}
});
//StartConversation(this.Target.World, 340878);
var HubWorld = this.Target.World.Game.GetWorld(WorldSno.x1_tristram_adventure_mode_hub);
var Orek = (HubWorld.GetActorBySNO(ActorSno._x1_lr_nephalem) as InteractiveNPC);
Orek.Conversations.Add(new ActorSystem.Interactions.ConversationInteraction(340878));
Orek.ForceConversationSNO = 340878;
Orek.Attributes[GameAttribute.Conversation_Icon, 0] = 2;
Orek.Attributes[GameAttribute.Conversation_Icon, 1] = 2;
Orek.Attributes[GameAttribute.Conversation_Icon, 2] = 2;
Orek.Attributes[GameAttribute.Conversation_Icon, 3] = 2;
Orek.Attributes.BroadcastChangedIfRevealed();
//Уникальный спавн
this.Target.World.SpawnBloodShards(this.Target, plr, RandomHelper.Next(10, 30));
this.Target.World.SpawnGold(this.Target, plr);
this.Target.World.SpawnGold(this.Target, plr);
this.Target.World.SpawnGold(this.Target, plr);
var hubWorld = this.Target.World.Game.GetWorld(WorldSno.x1_tristram_adventure_mode_hub);
var orek = (hubWorld.GetActorBySNO(ActorSno._x1_lr_nephalem) as InteractiveNPC);
orek.Conversations.Add(new ActorSystem.Interactions.ConversationInteraction(340878));
orek.ForceConversationSNO = 340878;
orek.Attributes[GameAttribute.Conversation_Icon, 0] = 2;
orek.Attributes[GameAttribute.Conversation_Icon, 1] = 2;
orek.Attributes[GameAttribute.Conversation_Icon, 2] = 2;
orek.Attributes[GameAttribute.Conversation_Icon, 3] = 2;
orek.Attributes.BroadcastChangedIfRevealed();
// Unique spawn
Target.World.SpawnBloodShards(Target, plr, RandomHelper.Next(10, 30));
Target.World.SpawnGold(Target, plr);
Target.World.SpawnGold(Target, plr);
Target.World.SpawnGold(Target, plr);
plr.Toon.GameAccount.BigPortalKey++;
this.Target.World.Game.ActiveNephalemProgress = 0f;
Target.World.Game.ActiveNephalemProgress = 0f;
}
}

View File

@ -2,6 +2,7 @@
#pragma warning disable 1591, 0612
#region Designer generated code
using System;
using pb = global::Google.ProtocolBuffers;
using pbc = global::Google.ProtocolBuffers.Collections;
using pbd = global::Google.ProtocolBuffers.Descriptors;
@ -6576,6 +6577,11 @@ namespace D3.Items {
PrepareBuilder();
result.currency_.Clear();
return this;
}
public void AddCurrency(object consumable)
{
throw new NotImplementedException();
}
}
static CurrencySavedData() {