Skip to content

Commit

Permalink
etc
Browse files Browse the repository at this point in the history
  • Loading branch information
aedenthorn committed Oct 8, 2021
1 parent 4b41dd7 commit 2fd98e6
Show file tree
Hide file tree
Showing 22 changed files with 543 additions and 6 deletions.
41 changes: 41 additions & 0 deletions CoinCollector/CoinCollector.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Version>1.0.0</Version>
<TargetFramework>net5.0</TargetFramework>
<EnableHarmony>true</EnableHarmony>
</PropertyGroup>
<ItemGroup>
<None Remove="assets\93761__timbre__blip-echo-at-different-speeds.wav" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="Pathoschild.Stardew.ModBuildConfig" Version="4.0.0-beta.20210916" />
</ItemGroup>

<ItemGroup>
<Reference Include="SMAPI.Toolkit">
<HintPath>..\SMAPILibs\SMAPI.Toolkit.dll</HintPath>
<Private>false</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<None Update="assets\blip.wav">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="dga\assets\metaldetector.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="dga\content.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="dga\i18n\default.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="dga\manifest.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<Folder Include="dga\" />
</ItemGroup>
</Project>
20 changes: 20 additions & 0 deletions CoinCollector/CoinDataDict.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
//using Harmony;
using Microsoft.Xna.Framework.Graphics;
using System.Collections.Generic;

namespace CoinCollector
{
public class CoinDataDict
{
public List<CoinData> data = new List<CoinData>();
}

public class CoinData
{
public string id;
public string setName;
public float rarity;
public int parentSheetIndex;
public bool isDGA = false;
}
}
31 changes: 31 additions & 0 deletions CoinCollector/IDynamicGameAssetsApi.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
using StardewModdingAPI;

namespace CoinCollector
{
public interface IDynamicGameAssetsApi
{
/// <summary>
/// Get the DGA item ID of this item, if it has one.
/// </summary>
/// <param name="item">The item to get the DGA item ID of.</param>
/// <returns>The DGA item ID if it has one, otherwise null.</returns>
string GetDGAItemId(object item);

/// <summary>
/// Spawn a DGA item, referenced with its full ID ("mod.id/ItemId").
/// Some items, such as crafting recipes or crops, don't have an item representation.
/// </summary>
/// <param name="fullId">The full ID of the item to spawn.</param>
/// <returns></returns>
object SpawnDGAItem(string fullId);

/// <summary>
/// Register a DGA pack embedded in another mod.
/// Needs the standard DGA fields in the manifest. (See documentation.)
/// Probably shouldn't use config-schema.json for these, because if you do it will overwrite your mod's config.json.
/// </summary>
/// <param name="manifest">The mod manifest.</param>
/// <param name="dir">The absolute path to the directory of the pack.</param>
void AddEmbeddedPack(IManifest manifest, string dir);
}
}
33 changes: 33 additions & 0 deletions CoinCollector/IndicatorProjectile.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//using HarmonyLib;
using Microsoft.Xna.Framework;
using StardewValley;
using StardewValley.Projectiles;
using StardewValley.TerrainFeatures;

namespace CoinCollector
{
internal class IndicatorProjectile : BasicProjectile
{
public IndicatorProjectile(int v1, int v2, int v3, int v4, float v5, float v6, float v7, Vector2 vector2, string v8, string v9, bool v10, bool v11, GameLocation currentLocation, Farmer player, bool v12, BasicProjectile.onCollisionBehavior p) : base(v1, v2, v3, v4, v5, v6, v7, vector2, v8, v9, v10, v11, currentLocation, player, v12, p)
{

}

public override void behaviorOnCollisionWithPlayer(GameLocation location, Farmer player)
{
}

public override void behaviorOnCollisionWithTerrainFeature(TerrainFeature t, Vector2 tileLocation, GameLocation location)
{
}
public override void behaviorOnCollisionWithMineWall(int tileX, int tileY)
{
}
public override void behaviorOnCollisionWithOther(GameLocation location)
{
}
public override void behaviorOnCollisionWithMonster(NPC n, GameLocation location)
{
}
}
}
26 changes: 26 additions & 0 deletions CoinCollector/ModConfig.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@

using System.Collections.Generic;

namespace CoinCollector
{
public class ModConfig
{
public bool EnableMod { get; set; } = true;
public string BlipAudioPath { get; set; } = "assets/blip.wav";
public float BlipAudioVolume { get; set; } = 1f;
public bool BlipAudioIncreasePitch { get; set; } = true;
public bool RequireMetalDetector { get; set; } = true;
public string MetalDetectorID { get; set; } = "MetalDetector";
public bool RequireMetalDetectorSwing { get; set; } = false;
public bool EnableIndicator { get; set; } = true;
public int SecondsPerPoll { get; set; } = 1;
public float MapHasCoinsChance { get; set; } = 0.5f;
public int MinCoinsPerMap { get; set; } = 1;
public int MaxCoinsPerMap { get; set; } = 5;
public int IndicatorSprite { get; set; } = 7;
public float IndicatorLength { get; set; } = 3;
public float IndicatorSpeed { get; set; } = 10;
public float LuckFactor { get; set; } = 0.1f;
public float MaxPixelPingDistance { get; set; } = 800;
}
}
Loading

0 comments on commit 2fd98e6

Please sign in to comment.