-
Notifications
You must be signed in to change notification settings - Fork 45
/
Copy path2WeaponEnchantments.cs
48 lines (45 loc) · 1.67 KB
/
2WeaponEnchantments.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// Decompiled with JetBrains decompiler
// Type: StardewValley.MagicEnchantment
// Assembly: Stardew Valley, Version=1.5.6.22018, Culture=neutral, PublicKeyToken=null
// MVID: BEBB6D18-4941-4529-AC12-B54F0C61CC20
// Assembly location: C:\Program Files (x86)\Steam\steamapps\common\Stardew Valley\Stardew Valley.dll
using Microsoft.Xna.Framework;
using StardewValley.Projectiles;
using StardewValley.Tools;
using System;
namespace StardewValley
{
public class MagicEnchantment : BaseWeaponEnchantment
{
protected override void _OnSwing(MeleeWeapon weapon, Farmer farmer)
{
base._OnSwing(weapon, farmer);
Vector2 vector2 = new Vector2();
Vector2 startingPosition = farmer.getStandingPosition() - new Vector2(32f, 32f);
switch (farmer.facingDirection.Value)
{
case 0:
vector2.Y = -1f;
break;
case 1:
vector2.X = 1f;
break;
case 2:
vector2.Y = 1f;
break;
case 3:
vector2.X = -1f;
break;
}
float num = 32f;
vector2 *= 10f;
BasicProjectile basicProjectile = new BasicProjectile((int) Math.Ceiling((double) weapon.minDamage.Value / 4.0), 11, 0, 1, num * ((float) Math.PI / 180f), vector2.X, vector2.Y, startingPosition, "", "", false, true, farmer.currentLocation, (Character) farmer);
basicProjectile.ignoreTravelGracePeriod.Value = true;
basicProjectile.ignoreMeleeAttacks.Value = true;
basicProjectile.maxTravelDistance.Value = 256;
basicProjectile.height.Value = 32f;
farmer.currentLocation.projectiles.Add((Projectile) basicProjectile);
}
public override string GetName() => "Starburst";
}
}