2 using System.Collections.Generic;
5 using Vintagestory.API.Client;
6 using Vintagestory.API.Common;
7 using Vintagestory.API.MathTools;
8 using Vintagestory.GameContent;
12 public static class DefaultDesignators
14 public static Designator Roads =
16 new AssetLocation("game", "stonepath"),
18 EnumBlockMaterial.Gravel
21 public static Designator GroundSigns =
23 new AssetLocation("game", "sign-ground"),
25 EnumBlockMaterial.Wood,
29 public static Designator WallSigns =
31 new AssetLocation("game", "sign-wall"),
33 EnumBlockMaterial.Wood,
37 public static Designator PostSigns =
39 new AssetLocation("game", "signpost"),
41 EnumBlockMaterial.Wood,
45 internal static void DecodeSign(ICoreClientAPI clientAPI, PointsOfInterest poi, BlockPos posn, Block block)
47 clientAPI.Logger.VerboseDebug("Sign Designator Invoked!");
48 //sign Text into a POI field...
49 BlockEntitySign signEntity = clientAPI.World.BlockAccessor.GetBlockEntity(posn) as BlockEntitySign;
51 if (signEntity != null && !String.IsNullOrEmpty(signEntity.text))
56 Location = posn.Copy( ),
57 Notes = signEntity.text,
58 Timestamp = DateTimeOffset.UtcNow,
67 internal static void DecodePostSign(ICoreClientAPI clientAPI, PointsOfInterest poi, BlockPos posn, Block block)
69 clientAPI.Logger.VerboseDebug("Post-sign Designator Invoked!");
70 //sign post Text into a POI field...
71 BlockEntitySignPost signEntity = clientAPI.World.BlockAccessor.GetBlockEntity(posn) as BlockEntitySignPost;
73 if (signEntity != null && signEntity.textByCardinalDirection?.Length > 0 ) {
77 Location = posn.Copy( ),
78 Notes = string.Join(",", signEntity.textByCardinalDirection),
79 Timestamp = DateTimeOffset.UtcNow,