Trade reputation rework + Merchants back + Mining contract (#1347)
* refactor unlocking * fix contract debug crashing * Update dev_map.yml * bugfixes and content rebalance * ore buy contract
This commit is contained in:
@@ -14,7 +14,6 @@ public sealed class CP14TradingPlatformBoundUserInterface(EntityUid owner, Enum
|
||||
|
||||
_window = this.CreateWindow<CP14TradingPlatformWindow>();
|
||||
|
||||
_window.OnUnlock += pos => SendMessage(new CP14TradingPositionUnlockAttempt(pos));
|
||||
_window.OnBuy += pos => SendMessage(new CP14TradingPositionBuyAttempt(pos));
|
||||
}
|
||||
|
||||
|
||||
@@ -35,6 +35,10 @@
|
||||
<Label Name="Name" Access="Public" StyleClasses="LabelHeadingBigger" VAlign="Center"
|
||||
HorizontalExpand="True" HorizontalAlignment="Center" />
|
||||
</BoxContainer>
|
||||
<BoxContainer Orientation="Horizontal" HorizontalExpand="True" HorizontalAlignment="Center">
|
||||
<TextureRect VerticalAlignment="Center" Margin="20 0 5 0" HorizontalAlignment="Left" TextureScale="2, 2" TexturePath="/Textures/_CP14/Interface/Misc/star.png"/>
|
||||
<RichTextLabel Name="UnlockCost" Access="Public" Text="0"/>
|
||||
</BoxContainer>
|
||||
<!-- Description -->
|
||||
<BoxContainer HorizontalExpand="True">
|
||||
<RichTextLabel Name="Description" HorizontalExpand="True" Access="Public" />
|
||||
@@ -47,17 +51,6 @@
|
||||
|
||||
<!-- Buttons -->
|
||||
<BoxContainer Orientation="Vertical" HorizontalExpand="True">
|
||||
|
||||
<BoxContainer Name="UnlockBox" Orientation="Horizontal" HorizontalExpand="True" Visible="True">
|
||||
<Button Name="UnlockButton" Text="{Loc 'cp14-trading-ui-button-unlock'}"
|
||||
ToolTip="{Loc 'cp14-trading-ui-button-unlock-tooltip'}" StyleClasses="OpenRight"
|
||||
HorizontalExpand="True" MinHeight="35" Access="Public"/>
|
||||
<BoxContainer SetWidth="100" MaxWidth="100" Orientation="Horizontal">
|
||||
<TextureRect VerticalAlignment="Center" Margin="20 0 5 0" HorizontalAlignment="Left" TextureScale="2, 2" TexturePath="/Textures/_CP14/Interface/Misc/star.png"/>
|
||||
<RichTextLabel Name="UnlockCost" Access="Public" Text="0"/>
|
||||
</BoxContainer>
|
||||
</BoxContainer>
|
||||
|
||||
<BoxContainer Name="BuyBox" Orientation="Horizontal" HorizontalExpand="True" Visible="True">
|
||||
<Button Name="BuyButton" Text="{Loc 'cp14-trading-ui-button-buy'}"
|
||||
ToolTip="{Loc 'cp14-trading-ui-button-buy-tooltip'}" StyleClasses="OpenRight"
|
||||
|
||||
@@ -6,6 +6,7 @@ using Content.Shared._CP14.Trading;
|
||||
using Content.Shared._CP14.Trading.Components;
|
||||
using Content.Shared._CP14.Trading.Prototypes;
|
||||
using Robust.Client.AutoGenerated;
|
||||
using Robust.Client.Player;
|
||||
using Robust.Client.UserInterface.Controls;
|
||||
using Robust.Client.UserInterface.CustomControls;
|
||||
using Robust.Client.UserInterface.XAML;
|
||||
@@ -25,6 +26,7 @@ public sealed partial class CP14TradingPlatformWindow : DefaultWindow
|
||||
[Dependency] private readonly IPrototypeManager _proto = default!;
|
||||
[Dependency] private readonly IEntityManager _e = default!;
|
||||
[Dependency] private readonly IGameTiming _timing = default!;
|
||||
[Dependency] private readonly IPlayerManager _player = default!;
|
||||
|
||||
private readonly CP14ClientTradingPlatformSystem _tradingSystem;
|
||||
private readonly CP14ClientStationEconomySystem _economySystem;
|
||||
@@ -39,8 +41,6 @@ public sealed partial class CP14TradingPlatformWindow : DefaultWindow
|
||||
|
||||
private ProtoId<CP14TradingFactionPrototype>? _selectedFaction;
|
||||
private CP14TradingPositionPrototype? _selectedPosition;
|
||||
|
||||
public event Action<ProtoId<CP14TradingPositionPrototype>>? OnUnlock;
|
||||
public event Action<ProtoId<CP14TradingPositionPrototype>>? OnBuy;
|
||||
|
||||
private ISawmill Sawmill { get; init; }
|
||||
@@ -75,21 +75,9 @@ public sealed partial class CP14TradingPlatformWindow : DefaultWindow
|
||||
ParallaxBackground.Offset = -offset * 0.25f + new Vector2(1000, 1000); //hardcoding is bad
|
||||
};
|
||||
GraphControl.OnNodeSelected += SelectNode;
|
||||
UnlockButton.OnPressed += UnlockPressed;
|
||||
BuyButton.OnPressed += BuyPressed;
|
||||
}
|
||||
|
||||
private void UnlockPressed(BaseButton.ButtonEventArgs obj)
|
||||
{
|
||||
if (_selectedPosition is null)
|
||||
return;
|
||||
|
||||
OnUnlock?.Invoke(_selectedPosition);
|
||||
|
||||
if (_cachedUser is not null)
|
||||
_audio.PlayGlobal(new SoundCollectionSpecifier("CP14CoinImpact"), _cachedUser.Value);
|
||||
}
|
||||
|
||||
private void BuyPressed(BaseButton.ButtonEventArgs obj)
|
||||
{
|
||||
if (_selectedPosition is null)
|
||||
@@ -133,16 +121,15 @@ public sealed partial class CP14TradingPlatformWindow : DefaultWindow
|
||||
}
|
||||
|
||||
_selectedPosition = node;
|
||||
var unlocked = _cachedUser.Value.Comp.UnlockedPositions;
|
||||
var unlocked = _cachedUser.Value.Comp.Reputation[_selectedPosition.Faction] >= _selectedPosition.ReputationLevel;
|
||||
|
||||
Name.Text = _tradingSystem.GetTradeName(_selectedPosition);
|
||||
Description.Text = _tradingSystem.GetTradeDescription(_selectedPosition);
|
||||
|
||||
LocationView.Texture = _selectedPosition.Icon.Frame0();
|
||||
UnlockButton.Disabled = !_tradingSystem.CanUnlockPosition((_cachedUser.Value.Owner, _cachedUser.Value.Comp), _selectedPosition);
|
||||
BuyButton.Disabled = !unlocked.Contains(_selectedPosition);
|
||||
BuyButton.Disabled = !unlocked;
|
||||
|
||||
UnlockCost.Text = _selectedPosition.UnlockReputationCost.ToString();
|
||||
UnlockCost.Text = _selectedPosition.ReputationLevel.ToString();
|
||||
|
||||
BuyPriceHolder.RemoveAllChildren();
|
||||
BuyPriceHolder.AddChild(new CP14PriceControl(_economySystem.GetPrice(_selectedPosition) ?? 0));
|
||||
@@ -153,24 +140,23 @@ public sealed partial class CP14TradingPlatformWindow : DefaultWindow
|
||||
Name.Text = string.Empty;
|
||||
Description.Text = string.Empty;
|
||||
LocationView.Texture = null;
|
||||
UnlockButton.Disabled = true;
|
||||
}
|
||||
|
||||
private void CacheSkillProto()
|
||||
{
|
||||
_allPositions = _proto.EnumeratePrototypes<CP14TradingPositionPrototype>();
|
||||
_allFactions = _proto.EnumeratePrototypes<CP14TradingFactionPrototype>().OrderBy(tree => Loc.GetString(tree.Name));
|
||||
UpdateGraphControl();
|
||||
}
|
||||
|
||||
public void UpdateState(CP14TradingPlatformUiState state)
|
||||
{
|
||||
_cacheState = state;
|
||||
var ent = _e.GetEntity(state.User);
|
||||
|
||||
if (!_e.TryGetComponent<CP14TradingReputationComponent>(ent, out var repComp))
|
||||
if (!_e.TryGetComponent<CP14TradingReputationComponent>(_player.LocalEntity, out var repComp))
|
||||
return;
|
||||
|
||||
_cachedUser = (ent, repComp);
|
||||
_cachedUser = (_player.LocalEntity.Value, repComp);
|
||||
|
||||
var plat = _e.GetEntity(state.Platform);
|
||||
if (!_e.TryGetComponent<CP14TradingPlatformComponent>(plat, out var platComp))
|
||||
@@ -192,15 +178,10 @@ public sealed partial class CP14TradingPlatformWindow : DefaultWindow
|
||||
if (position.Faction != _selectedFaction)
|
||||
continue;
|
||||
|
||||
var unlocked = _cachedUser.Value.Comp.UnlockedPositions;
|
||||
var gained = unlocked.Contains(position);
|
||||
var active = _tradingSystem.CanUnlockPosition((_cachedUser.Value.Owner, _cachedUser.Value.Comp), position);
|
||||
var node = new CP14NodeTreeElement(position.ID, gained, active, position.UiPosition * 66, position.Icon);
|
||||
var unlocked = _cachedUser.Value.Comp.Reputation[position.Faction] >= position.ReputationLevel;
|
||||
var active = _tradingSystem.CanBuyPosition((_cachedUser.Value.Owner, _cachedUser.Value.Comp), position);
|
||||
var node = new CP14NodeTreeElement(position.ID, unlocked, active, new Vector2(position.ReputationLevel.Float() * 50, position.UiPosition * 50) , position.Icon);
|
||||
nodeTreeElements.Add(node);
|
||||
if (position.Prerequisite != null)
|
||||
{
|
||||
edges.Add((position.Prerequisite, position.ID));
|
||||
}
|
||||
}
|
||||
|
||||
GraphControl.UpdateState(
|
||||
|
||||
@@ -68,11 +68,19 @@ public sealed partial class CP14DemiplaneSystem
|
||||
|
||||
private void GeneratorUsedInHand(Entity<CP14DemiplaneUsingOpenComponent> ent, ref UseInHandEvent args)
|
||||
{
|
||||
if (args.Handled)
|
||||
return;
|
||||
|
||||
if (!TryComp<CP14DemiplaneDataComponent>(ent, out var generator))
|
||||
return;
|
||||
|
||||
args.Handled = true;
|
||||
|
||||
UseGenerator((ent, generator), args.User);
|
||||
|
||||
QueueDel(ent);
|
||||
}
|
||||
|
||||
//Ed: I hate this function.
|
||||
private void UseGenerator(Entity<CP14DemiplaneDataComponent> generator, EntityUid? user = null)
|
||||
{
|
||||
@@ -130,10 +138,6 @@ public sealed partial class CP14DemiplaneSystem
|
||||
var connection = EnsureComp<CP14DemiplaneRiftComponent>(spawnedRift);
|
||||
AddDemiplaneRandomExitPoint(demiplane.Value, (spawnedRift, connection));
|
||||
}
|
||||
|
||||
#if !DEBUG
|
||||
QueueDel(generator); //wtf its crash debug build!
|
||||
#endif
|
||||
}
|
||||
|
||||
private void OnVerbExamine(Entity<CP14DemiplaneDataComponent> ent, ref GetVerbsEvent<ExamineVerb> args)
|
||||
|
||||
@@ -20,6 +20,19 @@ public sealed partial class CP14StationEconomySystem : CP14SharedStationEconomyS
|
||||
InitPriceEvents();
|
||||
|
||||
SubscribeLocalEvent<CP14StationEconomyComponent, StationPostInitEvent>(OnStationPostInit);
|
||||
SubscribeLocalEvent<PrototypesReloadedEventArgs>(OnPrototypesReloaded);
|
||||
}
|
||||
|
||||
private void OnPrototypesReloaded(PrototypesReloadedEventArgs ev)
|
||||
{
|
||||
if (!ev.WasModified<CP14TradingPositionPrototype>())
|
||||
return;
|
||||
|
||||
var query = EntityQueryEnumerator<CP14StationEconomyComponent>();
|
||||
while (query.MoveNext(out var uid, out var economyComponent))
|
||||
{
|
||||
UpdatePricing((uid, economyComponent));
|
||||
}
|
||||
}
|
||||
|
||||
private void OnStationPostInit(Entity<CP14StationEconomyComponent> ent, ref StationPostInitEvent args)
|
||||
|
||||
@@ -31,11 +31,14 @@ public sealed partial class CP14TradingPlatformSystem : CP14SharedTradingPlatfor
|
||||
base.Initialize();
|
||||
|
||||
SubscribeLocalEvent<CP14TradingPlatformComponent, CP14TradingPositionBuyAttempt>(OnBuyAttempt);
|
||||
SubscribeLocalEvent<CP14SellingPlatformComponent, CP14MagicEnergyOverloadEvent>(OnMagicOverload);
|
||||
SubscribeLocalEvent<CP14SellingPlatformComponent, CP14MagicEnergyLevelChangeEvent>(OnMagicChange);
|
||||
}
|
||||
|
||||
private void OnMagicOverload(Entity<CP14SellingPlatformComponent> ent, ref CP14MagicEnergyOverloadEvent args)
|
||||
private void OnMagicChange(Entity<CP14SellingPlatformComponent> ent, ref CP14MagicEnergyLevelChangeEvent args)
|
||||
{
|
||||
if (args.NewValue != args.MaxValue)
|
||||
return;
|
||||
|
||||
_magicEnergy.ClearEnergy(ent.Owner);
|
||||
|
||||
if (!TryComp<ItemPlacerComponent>(ent, out var itemPlacer))
|
||||
@@ -69,7 +72,10 @@ public sealed partial class CP14TradingPlatformSystem : CP14SharedTradingPlatfor
|
||||
|
||||
public bool TryBuyPosition(Entity<CP14TradingReputationComponent?> user, Entity<CP14TradingPlatformComponent> platform, ProtoId<CP14TradingPositionPrototype> position)
|
||||
{
|
||||
if (!CanBuyPosition(user, platform!, position))
|
||||
if (Timing.CurTime < platform.Comp.NextBuyTime)
|
||||
return false;
|
||||
|
||||
if (!CanBuyPosition(user, position))
|
||||
return false;
|
||||
|
||||
if (!Proto.TryIndex(position, out var indexedPosition))
|
||||
@@ -112,7 +118,7 @@ public sealed partial class CP14TradingPlatformSystem : CP14SharedTradingPlatfor
|
||||
|
||||
if (indexedPosition.Service is not null)
|
||||
indexedPosition.Service.Buy(EntityManager, Proto, platform);
|
||||
user.Comp.Reputation[indexedPosition.Faction] += (float)price / 10;
|
||||
user.Comp.Reputation[indexedPosition.Faction] += (float)price / 100;
|
||||
Dirty(user);
|
||||
|
||||
_audio.PlayPvs(platform.Comp.BuySound, Transform(platform).Coordinates);
|
||||
|
||||
@@ -9,9 +9,8 @@ public enum CP14TradingUiKey
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public sealed class CP14TradingPlatformUiState(NetEntity user, NetEntity platform) : BoundUserInterfaceState
|
||||
public sealed class CP14TradingPlatformUiState(NetEntity platform) : BoundUserInterfaceState
|
||||
{
|
||||
public NetEntity User = user;
|
||||
public NetEntity Platform = platform;
|
||||
}
|
||||
|
||||
|
||||
@@ -7,12 +7,6 @@ namespace Content.Shared._CP14.Trading.Components;
|
||||
[RegisterComponent, Access(typeof(CP14SharedTradingPlatformSystem))]
|
||||
public sealed partial class CP14TradingContractComponent : Component
|
||||
{
|
||||
[DataField]
|
||||
public TimeSpan Delay = TimeSpan.FromSeconds(2);
|
||||
|
||||
[DataField]
|
||||
public ProtoId<CP14TradingFactionPrototype> Faction;
|
||||
|
||||
[DataField]
|
||||
public float StartReputation = 1f;
|
||||
}
|
||||
|
||||
@@ -18,7 +18,4 @@ public sealed partial class CP14TradingReputationComponent : Component
|
||||
/// </summary>
|
||||
[DataField, AutoNetworkedField]
|
||||
public Dictionary<ProtoId<CP14TradingFactionPrototype>, FixedPoint2> Reputation = new();
|
||||
|
||||
[DataField, AutoNetworkedField]
|
||||
public HashSet<ProtoId<CP14TradingPositionPrototype>> UnlockedPositions = new();
|
||||
}
|
||||
|
||||
@@ -33,17 +33,14 @@ public sealed partial class CP14TradingPositionPrototype : IPrototype
|
||||
public ProtoId<CP14TradingFactionPrototype> Faction;
|
||||
|
||||
[DataField]
|
||||
public FixedPoint2 UnlockReputationCost = 1f;
|
||||
public FixedPoint2 ReputationLevel = 0f;
|
||||
|
||||
[DataField(required: true)]
|
||||
public Vector2 UiPosition = default!;
|
||||
public float UiPosition = default!;
|
||||
|
||||
[DataField(required: true)]
|
||||
public CP14StoreBuyService? Service = null;
|
||||
|
||||
[DataField]
|
||||
public ProtoId<CP14TradingPositionPrototype>? Prerequisite;
|
||||
|
||||
[DataField]
|
||||
public int PriceMarkup = 1;
|
||||
|
||||
@@ -51,7 +48,7 @@ public sealed partial class CP14TradingPositionPrototype : IPrototype
|
||||
/// each round prices will differ within +X percent of the calculated value
|
||||
/// </summary>
|
||||
[DataField]
|
||||
public float PriceFluctuation = 0.2f;
|
||||
public float PriceFluctuation = 0.6f;
|
||||
}
|
||||
|
||||
[ImplicitDataDefinitionForInheritors]
|
||||
|
||||
@@ -8,16 +8,9 @@ public abstract partial class CP14SharedTradingPlatformSystem
|
||||
{
|
||||
private void InitializeUI()
|
||||
{
|
||||
SubscribeLocalEvent<CP14TradingPlatformComponent, CP14TradingPositionUnlockAttempt>(OnUnlockAttempt);
|
||||
SubscribeLocalEvent<CP14TradingPlatformComponent, BeforeActivatableUIOpenEvent>(OnBeforeUIOpen);
|
||||
}
|
||||
|
||||
private void OnUnlockAttempt(Entity<CP14TradingPlatformComponent> ent, ref CP14TradingPositionUnlockAttempt args)
|
||||
{
|
||||
TryUnlockPosition(args.Actor, args.Position);
|
||||
UpdateUIState(ent, args.Actor);
|
||||
}
|
||||
|
||||
private void OnBeforeUIOpen(Entity<CP14TradingPlatformComponent> ent, ref BeforeActivatableUIOpenEvent args)
|
||||
{
|
||||
UpdateUIState(ent, args.User);
|
||||
|
||||
@@ -2,6 +2,8 @@ using Content.Shared._CP14.Trading.Components;
|
||||
using Content.Shared._CP14.Trading.Prototypes;
|
||||
using Content.Shared.Interaction.Events;
|
||||
using Content.Shared.Popups;
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.Audio.Systems;
|
||||
using Robust.Shared.Network;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Serialization;
|
||||
@@ -16,6 +18,7 @@ public abstract partial class CP14SharedTradingPlatformSystem : EntitySystem
|
||||
[Dependency] protected readonly IGameTiming Timing = default!;
|
||||
[Dependency] private readonly SharedPopupSystem _popup = default!;
|
||||
[Dependency] private readonly INetManager _net = default!;
|
||||
[Dependency] private readonly SharedAudioSystem _audio = default!;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
@@ -40,12 +43,18 @@ public abstract partial class CP14SharedTradingPlatformSystem : EntitySystem
|
||||
|
||||
private void OnContractUse(Entity<CP14TradingContractComponent> ent, ref UseInHandEvent args)
|
||||
{
|
||||
if (args.Handled)
|
||||
return;
|
||||
if (!Proto.TryIndex(ent.Comp.Faction, out var indexedFaction))
|
||||
return;
|
||||
|
||||
args.Handled = true;
|
||||
|
||||
var repComp = EnsureComp<CP14TradingReputationComponent>(args.User);
|
||||
repComp.Reputation.TryAdd(ent.Comp.Faction, ent.Comp.StartReputation);
|
||||
repComp.Reputation.TryAdd(ent.Comp.Faction, 0);
|
||||
_audio.PlayLocal(new SoundCollectionSpecifier("CP14CoinImpact"), args.User, args.User);
|
||||
_popup.PopupPredicted(Loc.GetString("cp14-trading-contract-use", ("name", Loc.GetString(indexedFaction.Name))), args.User, args.User);
|
||||
|
||||
if (_net.IsServer)
|
||||
QueueDel(ent);
|
||||
}
|
||||
@@ -55,70 +64,23 @@ public abstract partial class CP14SharedTradingPlatformSystem : EntitySystem
|
||||
if (!TryComp<CP14TradingReputationComponent>(user, out var repComp))
|
||||
return;
|
||||
|
||||
_userInterface.SetUiState(ent.Owner, CP14TradingUiKey.Key, new CP14TradingPlatformUiState(GetNetEntity(user), GetNetEntity(ent)));
|
||||
_userInterface.SetUiState(ent.Owner, CP14TradingUiKey.Key, new CP14TradingPlatformUiState(GetNetEntity(ent)));
|
||||
}
|
||||
|
||||
public bool TryUnlockPosition(Entity<CP14TradingReputationComponent?> user, ProtoId<CP14TradingPositionPrototype> position)
|
||||
public bool CanBuyPosition(Entity<CP14TradingReputationComponent?> user, ProtoId<CP14TradingPositionPrototype> position)
|
||||
{
|
||||
if (!CanUnlockPosition(user, position))
|
||||
if (!Resolve(user.Owner, ref user.Comp, false))
|
||||
return false;
|
||||
|
||||
if (!Proto.TryIndex(position, out var indexedPosition))
|
||||
return false;
|
||||
|
||||
if (!Resolve(user.Owner, ref user.Comp, false))
|
||||
return false;
|
||||
|
||||
user.Comp.Reputation[indexedPosition.Faction] -= indexedPosition.UnlockReputationCost;
|
||||
user.Comp.UnlockedPositions.Add(position);
|
||||
Dirty(user);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public bool CanUnlockPosition(Entity<CP14TradingReputationComponent?> user, ProtoId<CP14TradingPositionPrototype> position)
|
||||
{
|
||||
if (!Resolve(user.Owner, ref user.Comp, false))
|
||||
return false;
|
||||
|
||||
if (!Proto.TryIndex(position, out var indexedPosition))
|
||||
return false;
|
||||
|
||||
if (!user.Comp.Reputation.ContainsKey(indexedPosition.Faction))
|
||||
return false;
|
||||
|
||||
if (user.Comp.UnlockedPositions.Contains(position))
|
||||
return false;
|
||||
|
||||
if (indexedPosition.Prerequisite is not null && !user.Comp.UnlockedPositions.Contains(indexedPosition.Prerequisite.Value))
|
||||
return false;
|
||||
|
||||
return user.Comp.Reputation.GetValueOrDefault(indexedPosition.Faction, 0f) >= indexedPosition.UnlockReputationCost;
|
||||
}
|
||||
|
||||
public bool CanBuyPosition(Entity<CP14TradingReputationComponent?> user, Entity<CP14TradingPlatformComponent?> platform, ProtoId<CP14TradingPositionPrototype> position)
|
||||
{
|
||||
if (!Resolve(user.Owner, ref user.Comp, false))
|
||||
return false;
|
||||
if (!Resolve(platform.Owner, ref platform.Comp, false))
|
||||
return false;
|
||||
|
||||
if (!user.Comp.UnlockedPositions.Contains(position))
|
||||
return false;
|
||||
|
||||
if (Timing.CurTime < platform.Comp.NextBuyTime)
|
||||
if (user.Comp.Reputation[indexedPosition.Faction] < indexedPosition.ReputationLevel)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public sealed class CP14TradingPositionUnlockAttempt(ProtoId<CP14TradingPositionPrototype> position) : BoundUserInterfaceMessage
|
||||
{
|
||||
public readonly ProtoId<CP14TradingPositionPrototype> Position = position;
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public sealed class CP14TradingPositionBuyAttempt(ProtoId<CP14TradingPositionPrototype> position) : BoundUserInterfaceMessage
|
||||
{
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
cp14-trade-faction-contracts = Zellasian Trade Guild
|
||||
cp14-trade-faction-victoria-gardens = Victoria Gardens
|
||||
cp14-trade-faction-brad-potions = Brad's marvelous potions
|
||||
cp14-trade-faction-brad-potions = Brad's marvelous potions
|
||||
cp14-trade-faction-dwarf-mining = 'Dwarf Steel' mining branch
|
||||
@@ -1,6 +1,3 @@
|
||||
cp14-trading-ui-button-unlock = Unlock contract
|
||||
cp14-trading-ui-button-unlock-tooltip = You contract to purchase the specified equipment or service by spending your reputation. After that, you can buy that equipment or service with money in unlimited quantities.
|
||||
|
||||
cp14-trading-ui-button-buy = Buy
|
||||
cp14-trading-ui-button-buy-tooltip = You spend the funds on the trading platform and buy the specified equipment or service from the selected vendor, which also increases your reputation. The equipment will be instantly delivered to you by spatial magic, and the service will be rendered as soon as possible.
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
cp14-trade-faction-contracts = Торговая гильдия Зелласиан
|
||||
cp14-trade-faction-victoria-gardens = Сады Виктории
|
||||
cp14-trade-faction-brad-potions = Великолепные зелья Брада
|
||||
cp14-trade-faction-brad-potions = Великолепные зелья Брада
|
||||
cp14-trade-faction-dwarf-mining = Шахтерский филиал 'Дворфийская сталь'
|
||||
@@ -1,6 +1,3 @@
|
||||
cp14-trading-ui-button-unlock = Разблокировать контракт
|
||||
cp14-trading-ui-button-unlock-tooltip = Вы заключаете контракт, затрачивая на это свою репутацию. После этого, вы можете покупать это снаряжение или услугу за деньги в неограниченном количестве.
|
||||
|
||||
cp14-trading-ui-button-buy = Купить
|
||||
cp14-trading-ui-button-buy-tooltip = Вы тратите средства, расположенные на торговой платформе и закупаете указанное снаряжение или услугу у выбранного продавца, что так же увеличивает вашу репутацию. Снаряжение будет мгновенно доставлено вам путем пространственной магии, а услуга оказана в ближайшее время.
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@ entities:
|
||||
rot: -1.5707963267948966 rad
|
||||
pos: -8.5,3.5
|
||||
parent: 2
|
||||
- proto: CP14AlchemyFurnaceDebug
|
||||
- proto: CP14AlchemyFurnace
|
||||
entities:
|
||||
- uid: 301
|
||||
components:
|
||||
|
||||
@@ -39,3 +39,14 @@
|
||||
- type: CP14TradingContract
|
||||
faction: BradPotions
|
||||
|
||||
- type: entity
|
||||
parent: CP14TradeContractBase
|
||||
id: CP14TradeContractDwarfMining
|
||||
description: Trading contract with the "Dwarf Steel" mining branch. Allows you to purchase various ore and mining tools.
|
||||
suffix: Dwarf Miners
|
||||
components:
|
||||
- type: Sprite
|
||||
state: dwarf_mining
|
||||
- type: CP14TradingContract
|
||||
faction: DwarfMining
|
||||
|
||||
|
||||
@@ -60,6 +60,10 @@
|
||||
- type: Tag
|
||||
tags:
|
||||
- CP14Torch
|
||||
- type: PhysicalComposition
|
||||
materialComposition:
|
||||
CP14WoodenPlanks: 10
|
||||
CP14Cloth: 10
|
||||
|
||||
- type: entity
|
||||
parent: CP14Torch
|
||||
|
||||
@@ -1,77 +1,21 @@
|
||||
|
||||
# Rep 0
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingBrute
|
||||
faction: BradPotions
|
||||
uiPosition: 0, 0
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingBrute
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingPoison
|
||||
faction: BradPotions
|
||||
uiPosition: 0, 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingPoison
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingAirloss
|
||||
faction: BradPotions
|
||||
uiPosition: 0, 2
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingAirloss
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingBlood
|
||||
faction: BradPotions
|
||||
uiPosition: 0, 3
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingBlood
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallSpeedUp
|
||||
faction: BradPotions
|
||||
uiPosition: 1, 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallSpeedUp
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallRainbow
|
||||
faction: BradPotions
|
||||
uiPosition: 1, 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallRainbow
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingManaDepletion
|
||||
faction: BradPotions
|
||||
uiPosition: 1, 2
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingManaDepletion
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingMana
|
||||
faction: BradPotions
|
||||
uiPosition: 1, 3
|
||||
reputationLevel: 0
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
@@ -79,12 +23,10 @@
|
||||
product: CP14VialSmallHealingMana
|
||||
|
||||
|
||||
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialTiny
|
||||
faction: BradPotions
|
||||
uiPosition: 3, 0
|
||||
uiPosition: 3
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_tiny.rsi
|
||||
state: vial
|
||||
@@ -93,83 +35,21 @@
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialTinyReinforced
|
||||
prerequisite: CP14VialTiny
|
||||
priceMarkup: 1
|
||||
faction: BradPotions
|
||||
uiPosition: 3, 1
|
||||
uiPosition: 4
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_tiny.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialTinyReinforced
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmall
|
||||
prerequisite: CP14VialTiny
|
||||
priceMarkup: 1
|
||||
faction: BradPotions
|
||||
uiPosition: 4, 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmall
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallReinforced
|
||||
prerequisite: CP14VialSmall
|
||||
priceMarkup: 2
|
||||
faction: BradPotions
|
||||
uiPosition: 4, 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallReinforced
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialMedium
|
||||
prerequisite: CP14VialSmall
|
||||
priceMarkup: 2
|
||||
faction: BradPotions
|
||||
uiPosition: 5, 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_medium.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialMedium
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialMediumReinforced
|
||||
prerequisite: CP14VialMedium
|
||||
priceMarkup: 3
|
||||
faction: BradPotions
|
||||
uiPosition: 5, 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_medium.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialMediumReinforced
|
||||
|
||||
|
||||
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14Cauldron
|
||||
priceMarkup: 5
|
||||
faction: BradPotions
|
||||
uiPosition: 7, 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/cauldron.rsi
|
||||
state: icon
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14Cauldron
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14Pestle
|
||||
priceMarkup: 2
|
||||
faction: BradPotions
|
||||
uiPosition: 8, 0
|
||||
uiPosition: 6
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/mortar_pestle.rsi
|
||||
state: pestle
|
||||
@@ -180,18 +60,67 @@
|
||||
id: CP14Mortar
|
||||
priceMarkup: 2
|
||||
faction: BradPotions
|
||||
uiPosition: 9, 0
|
||||
uiPosition: 7
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/mortar_pestle.rsi
|
||||
state: mortar_base
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14Mortar
|
||||
|
||||
# Rep 1
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingBlood
|
||||
faction: BradPotions
|
||||
reputationLevel: 1
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingBlood
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingManaDepletion
|
||||
faction: BradPotions
|
||||
reputationLevel: 1
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingManaDepletion
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmall
|
||||
reputationLevel: 1
|
||||
priceMarkup: 1
|
||||
faction: BradPotions
|
||||
uiPosition: 3
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmall
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallReinforced
|
||||
reputationLevel: 1
|
||||
priceMarkup: 2
|
||||
faction: BradPotions
|
||||
uiPosition: 4
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallReinforced
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14Dropper
|
||||
priceMarkup: 1
|
||||
reputationLevel: 1
|
||||
faction: BradPotions
|
||||
uiPosition: 7, 1
|
||||
uiPosition: 6
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/dropper.rsi
|
||||
state: dropper
|
||||
@@ -201,12 +130,96 @@
|
||||
- type: cp14TradingPosition
|
||||
id: CP14Syringe
|
||||
priceMarkup: 2
|
||||
reputationLevel: 1
|
||||
faction: BradPotions
|
||||
uiPosition: 8, 1
|
||||
uiPosition: 7
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/syringe.rsi
|
||||
state: base
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14Syringe
|
||||
|
||||
# Rep 2
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingPoison
|
||||
faction: BradPotions
|
||||
reputationLevel: 2
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingPoison
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallHealingAirloss
|
||||
faction: BradPotions
|
||||
reputationLevel: 2
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallHealingAirloss
|
||||
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialMedium
|
||||
reputationLevel: 2
|
||||
priceMarkup: 2
|
||||
faction: BradPotions
|
||||
uiPosition: 3
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_medium.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialMedium
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialMediumReinforced
|
||||
reputationLevel: 2
|
||||
priceMarkup: 3
|
||||
faction: BradPotions
|
||||
uiPosition: 4
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_medium.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialMediumReinforced
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14Cauldron
|
||||
priceMarkup: 5
|
||||
faction: BradPotions
|
||||
reputationLevel: 2
|
||||
uiPosition: 6
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/cauldron.rsi
|
||||
state: icon
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14Cauldron
|
||||
|
||||
# Rep 3
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallSpeedUp
|
||||
faction: BradPotions
|
||||
reputationLevel: 3
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallSpeedUp
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14VialSmallRainbow
|
||||
faction: BradPotions
|
||||
reputationLevel: 3
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Alchemy/vial_small.rsi
|
||||
state: vial
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14VialSmallRainbow
|
||||
@@ -1,8 +1,7 @@
|
||||
- type: cp14TradingPosition
|
||||
id: CP14TradeContractVictoriaGardens
|
||||
faction: ContractGuild
|
||||
uiPosition: 0, 0
|
||||
unlockReputationCost: 1
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Economy/trade_contracts.rsi
|
||||
state: victoria_garden
|
||||
@@ -13,8 +12,7 @@
|
||||
- type: cp14TradingPosition
|
||||
id: CP14TradeContractBradPotions
|
||||
faction: ContractGuild
|
||||
uiPosition: 0, 1
|
||||
unlockReputationCost: 1
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Economy/trade_contracts.rsi
|
||||
state: brad_potions
|
||||
@@ -22,3 +20,14 @@
|
||||
product: CP14TradeContractBradPotions
|
||||
count: 1
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14TradeContractDwarfMining
|
||||
faction: ContractGuild
|
||||
uiPosition: 2
|
||||
icon:
|
||||
sprite: _CP14/Objects/Specific/Economy/trade_contracts.rsi
|
||||
state: dwarf_mining
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14TradeContractDwarfMining
|
||||
count: 1
|
||||
|
||||
|
||||
138
Resources/Prototypes/_CP14/Trading/dwarf_mining.yml
Normal file
138
Resources/Prototypes/_CP14/Trading/dwarf_mining.yml
Normal file
@@ -0,0 +1,138 @@
|
||||
|
||||
# Rep 0
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14OreCopper5
|
||||
faction: DwarfMining
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/copper_ore.rsi
|
||||
state: ore2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14OreCopper5
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14CopperBar5
|
||||
faction: DwarfMining
|
||||
priceMarkup: 5
|
||||
uiPosition: 4
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/copper_bar.rsi
|
||||
state: bar_2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14CopperBar5
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14GlassSheet5
|
||||
faction: DwarfMining
|
||||
uiPosition: 5
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/glass.rsi
|
||||
state: glass_2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14GlassSheet5
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14Torch
|
||||
faction: DwarfMining
|
||||
uiPosition: 7
|
||||
icon:
|
||||
sprite: _CP14/Objects/Tools/torch.rsi
|
||||
state: torch-unlit
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14Torch
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14ModularIronPickaxe
|
||||
faction: DwarfMining
|
||||
priceMarkup: 15
|
||||
uiPosition: 8
|
||||
icon:
|
||||
sprite: _CP14/Objects/ModularTools/Blade/Pickaxe/metall_pickaxe.rsi
|
||||
state: tool
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14ModularIronPickaxe
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14ModularIronShovel
|
||||
faction: DwarfMining
|
||||
priceMarkup: 10
|
||||
uiPosition: 9
|
||||
icon:
|
||||
sprite: _CP14/Objects/ModularTools/Blade/Shovel/metall_shovel.rsi
|
||||
state: tool
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14ModularIronShovel
|
||||
|
||||
# Rep 1
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14OreIron5
|
||||
faction: DwarfMining
|
||||
reputationLevel: 1
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/iron_ore.rsi
|
||||
state: ore2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14OreIron5
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14IronBar5
|
||||
faction: DwarfMining
|
||||
reputationLevel: 1
|
||||
priceMarkup: 5
|
||||
uiPosition: 4
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/iron_bar.rsi
|
||||
state: bar_2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14IronBar5
|
||||
|
||||
# Rep 2
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14OreGold5
|
||||
faction: DwarfMining
|
||||
reputationLevel: 2
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/gold_ore.rsi
|
||||
state: ore2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14OreGold5
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14OreMithril5
|
||||
faction: DwarfMining
|
||||
reputationLevel: 2
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/mithril_ore.rsi
|
||||
state: ore2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14OreMithril5
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14GoldBar5
|
||||
faction: DwarfMining
|
||||
reputationLevel: 2
|
||||
priceMarkup: 5
|
||||
uiPosition: 4
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/gold_bar.rsi
|
||||
state: bar_2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14GoldBar5
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14MithrilBar5
|
||||
faction: DwarfMining
|
||||
reputationLevel: 2
|
||||
priceMarkup: 5
|
||||
uiPosition: 5
|
||||
icon:
|
||||
sprite: _CP14/Objects/Materials/mithril_bar.rsi
|
||||
state: bar_2
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14MithrilBar5
|
||||
@@ -5,9 +5,16 @@
|
||||
|
||||
- type: cp14TradingFaction
|
||||
id: VictoriaGardens
|
||||
color: "#67db67"
|
||||
name: cp14-trade-faction-victoria-gardens
|
||||
|
||||
- type: cp14TradingFaction
|
||||
id: BradPotions
|
||||
color: "#ad67db"
|
||||
name: cp14-trade-faction-brad-potions
|
||||
|
||||
- type: cp14TradingFaction
|
||||
id: DwarfMining
|
||||
color: "#b05a3e"
|
||||
name: cp14-trade-faction-dwarf-mining
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# Rep 0
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodCabbage
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 0, 0
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/cabbage.rsi
|
||||
state: base1
|
||||
@@ -9,21 +11,10 @@
|
||||
product: CP14FoodCabbage
|
||||
count: 3
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodPumpkin
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 0, 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/pumpkin.rsi
|
||||
state: base1
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14FoodPumpkin
|
||||
count: 3
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodPotato
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 0, 2
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/potato.rsi
|
||||
state: base1
|
||||
@@ -34,7 +25,7 @@
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodCucumber
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 0, 3
|
||||
uiPosition: 2
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/cucumber.rsi
|
||||
state: base1
|
||||
@@ -45,7 +36,7 @@
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodTomatoes
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 1, 0
|
||||
uiPosition: 3
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/tomatoes.rsi
|
||||
state: base1
|
||||
@@ -53,21 +44,10 @@
|
||||
product: CP14FoodTomatoes
|
||||
count: 3
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodApple
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 1, 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/apple.rsi
|
||||
state: base1
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14FoodApple
|
||||
count: 3
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodPepper
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 1, 2
|
||||
uiPosition: 4
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/pepper.rsi
|
||||
state: base1
|
||||
@@ -78,7 +58,7 @@
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodOnion
|
||||
faction: VictoriaGardens
|
||||
uiPosition: 1, 3
|
||||
uiPosition: 5
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/onion.rsi
|
||||
state: base1
|
||||
@@ -86,3 +66,28 @@
|
||||
product: CP14FoodOnion
|
||||
count: 3
|
||||
|
||||
# Rep 1
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodApple
|
||||
faction: VictoriaGardens
|
||||
reputationLevel: 1
|
||||
uiPosition: 0
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/apple.rsi
|
||||
state: base1
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14FoodApple
|
||||
count: 3
|
||||
|
||||
- type: cp14TradingPosition
|
||||
id: CP14FoodPumpkin
|
||||
faction: VictoriaGardens
|
||||
reputationLevel: 1
|
||||
uiPosition: 1
|
||||
icon:
|
||||
sprite: _CP14/Objects/Flora/Farm/pumpkin.rsi
|
||||
state: base1
|
||||
service: !type:CP14BuyItemsService
|
||||
product: CP14FoodPumpkin
|
||||
count: 3
|
||||
@@ -22,6 +22,9 @@
|
||||
{
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "tool"
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 463 B |
Binary file not shown.
|
After Width: | Height: | Size: 613 B |
@@ -15,6 +15,9 @@
|
||||
},
|
||||
{
|
||||
"name": "brad_potions"
|
||||
},
|
||||
{
|
||||
"name": "dwarf_mining"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user