Fixed chairs rotating too fast and allowed them to use shift-left click instead for sitting.
This commit is contained in:
parent
2dab29c6ba
commit
5be5222b19
|
@ -17,11 +17,13 @@ namespace Revitalize.Framework.Configs
|
||||||
public VanillaMachineRecipeConfig vanillaMachineConfig;
|
public VanillaMachineRecipeConfig vanillaMachineConfig;
|
||||||
|
|
||||||
public Shops_BlacksmithConfig shops_blacksmithConfig;
|
public Shops_BlacksmithConfig shops_blacksmithConfig;
|
||||||
|
public FurnitureConfig furnitureConfig;
|
||||||
|
|
||||||
public ConfigManager()
|
public ConfigManager()
|
||||||
{
|
{
|
||||||
this.vanillaMachineConfig = VanillaMachineRecipeConfig.InitializeConfig();
|
this.vanillaMachineConfig = VanillaMachineRecipeConfig.InitializeConfig();
|
||||||
this.shops_blacksmithConfig = Shops_BlacksmithConfig.InitializeConfig();
|
this.shops_blacksmithConfig = Shops_BlacksmithConfig.InitializeConfig();
|
||||||
|
this.furnitureConfig = FurnitureConfig.InitializeConfig();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace Revitalize.Framework.Configs
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Deals with config settings for furniture.
|
||||||
|
/// </summary>
|
||||||
|
public class FurnitureConfig
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// How many draw frames should happen between rotating a furniture piece.
|
||||||
|
/// </summary>
|
||||||
|
public int furnitureFrameRotationDelay;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Constructor.
|
||||||
|
/// </summary>
|
||||||
|
public FurnitureConfig()
|
||||||
|
{
|
||||||
|
this.furnitureFrameRotationDelay = 20;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes the config for furniture.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public static FurnitureConfig InitializeConfig()
|
||||||
|
{
|
||||||
|
if (File.Exists(Path.Combine(ModCore.ModHelper.DirectoryPath, "Configs", "FurnitureConfig.json")))
|
||||||
|
return ModCore.ModHelper.Data.ReadJsonFile<FurnitureConfig>(Path.Combine("Configs", "FurnitureConfig.json"));
|
||||||
|
else
|
||||||
|
{
|
||||||
|
FurnitureConfig Config = new FurnitureConfig();
|
||||||
|
ModCore.ModHelper.Data.WriteJsonFile<FurnitureConfig>(Path.Combine("Configs", "FurnitureConfig.json"), Config);
|
||||||
|
return Config;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -299,13 +299,13 @@ namespace Revitalize.Framework.Objects
|
||||||
MouseState mState = Mouse.GetState();
|
MouseState mState = Mouse.GetState();
|
||||||
KeyboardState keyboardState = Game1.GetKeyboardState();
|
KeyboardState keyboardState = Game1.GetKeyboardState();
|
||||||
|
|
||||||
if (mState.RightButton == ButtonState.Pressed && (keyboardState.IsKeyDown(Keys.LeftShift) || !keyboardState.IsKeyDown(Keys.RightShift)))
|
if (mState.RightButton == ButtonState.Pressed && keyboardState.IsKeyDown(Keys.LeftShift)==false && keyboardState.IsKeyDown(Keys.RightShift)==false)
|
||||||
{
|
{
|
||||||
//ModCore.log("Right clicked!");
|
//ModCore.log("Right clicked!");
|
||||||
return this.rightClicked(who);
|
return this.rightClicked(who);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mState.RightButton == ButtonState.Pressed && (keyboardState.IsKeyDown(Keys.LeftShift) || keyboardState.IsKeyDown(Keys.RightShift)))
|
if (mState.RightButton == ButtonState.Pressed && (keyboardState.IsKeyDown(Keys.LeftShift)==true || keyboardState.IsKeyDown(Keys.RightShift)==true))
|
||||||
return this.shiftRightClicked(who);
|
return this.shiftRightClicked(who);
|
||||||
|
|
||||||
return base.checkForAction(who, justCheckingForActivity);
|
return base.checkForAction(who, justCheckingForActivity);
|
||||||
|
|
|
@ -21,8 +21,7 @@ namespace Revitalize.Framework.Objects.Furniture
|
||||||
{
|
{
|
||||||
public ChairInformation furnitureInfo;
|
public ChairInformation furnitureInfo;
|
||||||
|
|
||||||
|
[JsonIgnore]
|
||||||
|
|
||||||
public override string ItemInfo
|
public override string ItemInfo
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
|
@ -139,10 +138,17 @@ namespace Revitalize.Framework.Objects.Furniture
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public override bool rightClicked(Farmer who)
|
public override bool rightClicked(Farmer who)
|
||||||
{
|
{
|
||||||
this.containerObject.rotate(); //Ensure that all of the chair pieces rotate at the same time.
|
if (this.framesUntilNextRotation <= 0)
|
||||||
|
{
|
||||||
this.checkForSpecialUpSittingAnimation();
|
this.containerObject.rotate(); //Ensure that all of the chair pieces rotate at the same time.
|
||||||
return true;
|
this.checkForSpecialUpSittingAnimation();
|
||||||
|
this.framesUntilNextRotation = ModCore.Configs.furnitureConfig.furnitureFrameRotationDelay;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
//return base.rightClicked(who);
|
//return base.rightClicked(who);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -263,6 +269,10 @@ namespace Revitalize.Framework.Objects.Furniture
|
||||||
|
|
||||||
spriteBatch.Draw(this.displayTexture, Game1.GlobalToLocal(Game1.viewport, new Vector2((float)(x * Game1.tileSize), y * Game1.tileSize)), new Rectangle?(this.animationManager.currentAnimation.sourceRectangle), this.info.drawColor * alpha, 0f, Vector2.Zero, (float)Game1.pixelZoom, this.flipped ? SpriteEffects.FlipHorizontally : SpriteEffects.None, Math.Max(0f, (float)(y * Game1.tileSize) / 10000f));
|
spriteBatch.Draw(this.displayTexture, Game1.GlobalToLocal(Game1.viewport, new Vector2((float)(x * Game1.tileSize), y * Game1.tileSize)), new Rectangle?(this.animationManager.currentAnimation.sourceRectangle), this.info.drawColor * alpha, 0f, Vector2.Zero, (float)Game1.pixelZoom, this.flipped ? SpriteEffects.FlipHorizontally : SpriteEffects.None, Math.Max(0f, (float)(y * Game1.tileSize) / 10000f));
|
||||||
// Log.AsyncG("ANIMATION IS NULL?!?!?!?!");
|
// Log.AsyncG("ANIMATION IS NULL?!?!?!?!");
|
||||||
|
if (this.framesUntilNextRotation > 0)
|
||||||
|
this.framesUntilNextRotation--;
|
||||||
|
if (this.framesUntilNextRotation < 0) this.framesUntilNextRotation = 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
else
|
else
|
||||||
|
@ -281,6 +291,9 @@ namespace Revitalize.Framework.Objects.Furniture
|
||||||
addedDepth += 1.0f;
|
addedDepth += 1.0f;
|
||||||
}
|
}
|
||||||
this.animationManager.draw(spriteBatch, this.displayTexture, Game1.GlobalToLocal(Game1.viewport, new Vector2((float)(x * Game1.tileSize), y * Game1.tileSize)), new Rectangle?(this.animationManager.currentAnimation.sourceRectangle), this.info.drawColor * alpha, 0f, Vector2.Zero, (float)Game1.pixelZoom, this.flipped ? SpriteEffects.FlipHorizontally : SpriteEffects.None, Math.Max(0f, (float)((y + addedDepth) * Game1.tileSize) / 10000f) + .00001f);
|
this.animationManager.draw(spriteBatch, this.displayTexture, Game1.GlobalToLocal(Game1.viewport, new Vector2((float)(x * Game1.tileSize), y * Game1.tileSize)), new Rectangle?(this.animationManager.currentAnimation.sourceRectangle), this.info.drawColor * alpha, 0f, Vector2.Zero, (float)Game1.pixelZoom, this.flipped ? SpriteEffects.FlipHorizontally : SpriteEffects.None, Math.Max(0f, (float)((y + addedDepth) * Game1.tileSize) / 10000f) + .00001f);
|
||||||
|
if (this.framesUntilNextRotation > 0)
|
||||||
|
this.framesUntilNextRotation--;
|
||||||
|
if (this.framesUntilNextRotation < 0) this.framesUntilNextRotation = 0;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.animationManager.tickAnimation();
|
this.animationManager.tickAnimation();
|
||||||
|
|
|
@ -4,6 +4,7 @@ using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Microsoft.Xna.Framework;
|
using Microsoft.Xna.Framework;
|
||||||
|
using Newtonsoft.Json;
|
||||||
using PyTK.CustomElementHandler;
|
using PyTK.CustomElementHandler;
|
||||||
using Revitalize.Framework.Objects.InformationFiles;
|
using Revitalize.Framework.Objects.InformationFiles;
|
||||||
using Revitalize.Framework.Objects.InformationFiles.Furniture;
|
using Revitalize.Framework.Objects.InformationFiles.Furniture;
|
||||||
|
@ -13,6 +14,8 @@ namespace Revitalize.Framework.Objects.Furniture
|
||||||
public class FurnitureTileComponent:MultiTiledComponent
|
public class FurnitureTileComponent:MultiTiledComponent
|
||||||
{
|
{
|
||||||
|
|
||||||
|
[JsonIgnore]
|
||||||
|
public int framesUntilNextRotation = 0;
|
||||||
|
|
||||||
public FurnitureTileComponent():base()
|
public FurnitureTileComponent():base()
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,6 +20,7 @@ namespace Revitalize.Framework.Objects.Furniture
|
||||||
public TableInformation furnitureInfo;
|
public TableInformation furnitureInfo;
|
||||||
|
|
||||||
|
|
||||||
|
[JsonIgnore]
|
||||||
public override string ItemInfo
|
public override string ItemInfo
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
|
|
|
@ -450,7 +450,7 @@ namespace Revitalize
|
||||||
|
|
||||||
|
|
||||||
// Game1.player.addItemToInventory(GetObjectFromPool("Omegasis.BigTiledTest"));
|
// Game1.player.addItemToInventory(GetObjectFromPool("Omegasis.BigTiledTest"));
|
||||||
//Game1.player.addItemToInventory(ObjectManager.getChair("Omegasis.Revitalize.Furniture.Chairs.OakChair"));
|
Game1.player.addItemToInventory(ObjectManager.getChair("Omegasis.Revitalize.Furniture.Chairs.OakChair"));
|
||||||
//Game1.player.addItemToInventory(GetObjectFromPool("Omegasis.Revitalize.Furniture.Rugs.RugTest"));
|
//Game1.player.addItemToInventory(GetObjectFromPool("Omegasis.Revitalize.Furniture.Rugs.RugTest"));
|
||||||
//Game1.player.addItemToInventory(ObjectManager.getTable("Omegasis.Revitalize.Furniture.Tables.OakTable"));
|
//Game1.player.addItemToInventory(ObjectManager.getTable("Omegasis.Revitalize.Furniture.Tables.OakTable"));
|
||||||
//Game1.player.addItemToInventory(ObjectManager.getLamp("Omegasis.Revitalize.Furniture.Lamps.OakLamp"));
|
//Game1.player.addItemToInventory(ObjectManager.getLamp("Omegasis.Revitalize.Furniture.Lamps.OakLamp"));
|
||||||
|
|
|
@ -53,6 +53,7 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Framework\Configs\ConfigManager.cs" />
|
<Compile Include="Framework\Configs\ConfigManager.cs" />
|
||||||
|
<Compile Include="Framework\Configs\FurnitureConfig.cs" />
|
||||||
<Compile Include="Framework\Configs\Shops_BlacksmithConfig.cs" />
|
<Compile Include="Framework\Configs\Shops_BlacksmithConfig.cs" />
|
||||||
<Compile Include="Framework\Configs\VanillaMachineRecipeConfig.cs" />
|
<Compile Include="Framework\Configs\VanillaMachineRecipeConfig.cs" />
|
||||||
<Compile Include="Framework\Crafting\Recipe.cs" />
|
<Compile Include="Framework\Crafting\Recipe.cs" />
|
||||||
|
|
Loading…
Reference in New Issue