/
Contact.hpp
84 lines (78 loc) · 1.7 KB
/
Contact.hpp
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#pragma once
#include <unordered_map>
// I want integer values in enums
#pragma warning (push)
#pragma warning (disable: 26812)
// ReSharper disable StringLiteralTypo
// ReSharper disable IdentifierTypo
namespace Parsing
{
enum From
{
// simple
FromHand = 1,
FromFeet,
FromMouth,
FromTongue,
FromOvipos,
FromTentacle,
// depends in ActorType
FromPenis,
FromVagina,
FromStrapon,
};
enum To
{
// simple
ToAnus = 1,
ToButt,
ToFeet,
ToHand,
ToMouth,
ToNipples,
// depends on ActorType
ToPenis,
ToVagina,
ToStrapon,
ToEither,
};
const std::unordered_map<std::string_view, const From> simpleFrom =
{
// direct
{"HANDTO", FromHand},
{"FEETTO", FromFeet},
{"MOUTHTO", FromMouth},
{"TONGUETO", FromTongue},
{"OVIPOSTO", FromOvipos},
{"LEFTHANDTO", FromHand},
{"TENTACLETO", FromTentacle},
// depends on actor type. has default value that need to be fixed later
{"PENISTO", FromPenis},
{"VAGINATO", FromVagina},
{"STRAPONTO", FromStrapon},
{"STICKTO", FromPenis},
{"SPANKTO", FromHand}, // it is from hand. spank can be got from narrative
};
const std::unordered_map<std::string_view, const To> simpleTo =
{
// direct
{"TOANUS", ToAnus},
{"TOBUTT", ToButt},
{"TOFEET", ToFeet},
{"TOFOOT", ToFeet},
{"TOHAND", ToHand},
{"TOMOUTH", ToMouth},
{"TONIPPLE", ToNipples}, // mistypes are possible...
{"TONIPPLES", ToNipples},
{"TOTIT", ToNipples},
// depends on actor type. has default value that need to be fixed later
{"TOPENIS", ToPenis},
{"TOVAGINA", ToVagina},
{"TOEITHER", ToEither},
{"TOSTICK", ToPenis},
{"TOFACE", ToMouth},
};
}
// ReSharper restore IdentifierTypo
// ReSharper restore StringLiteralTypo
#pragma warning (pop)