OnaholeMotion.cs 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. using System;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. public class OnaholeMotion : MonoBehaviour
  5. {
  6. private bool IsFinish
  7. {
  8. get
  9. {
  10. return this.finishFlag;
  11. }
  12. }
  13. public void SetOwner(OnaholeCharaManager owner)
  14. {
  15. this.charaMgr = owner;
  16. }
  17. public OnaholeMotion.MODE GetMode()
  18. {
  19. return this.mode;
  20. }
  21. public OnaholeMotion.ANIM_TYPE GetAnimType()
  22. {
  23. return this.playAnime;
  24. }
  25. public OnaholeMotion.PISTON_MODE GetPistonMode()
  26. {
  27. return this.pistonMode;
  28. }
  29. private bool IsNextModePermit
  30. {
  31. get
  32. {
  33. return this.nextModePermit;
  34. }
  35. }
  36. private string targetMaidGUID { get; set; }
  37. private string targetManGUID { get; set; }
  38. public static readonly string[] animeTypeNameArray = new string[]
  39. {
  40. "NON",
  41. "待機",
  42. "挿入",
  43. "ピストン",
  44. "抜き",
  45. "ピストン深い",
  46. "射精(中)",
  47. "射精後(中)",
  48. "射精IN(中)",
  49. "射精(外)",
  50. "射精後(外)",
  51. "射精IN(外)"
  52. };
  53. private OnaholeCharaManager charaMgr;
  54. private TBody tBody;
  55. [SerializeField]
  56. private OnaholeMotion.MODE mode = OnaholeMotion.MODE.WAIT;
  57. [SerializeField]
  58. private MaidTouch.POINT activeSexMode;
  59. private OnaholeMotion.ANIM_TYPE playAnime;
  60. private OnaholeMotion.ANIM_TYPE shaseiType;
  61. private AnimationState lastAnime;
  62. [SerializeField]
  63. private OnaholeMotion.PISTON_MODE pistonMode = OnaholeMotion.PISTON_MODE.PISTON;
  64. private Dictionary<MaidTouch.POINT, OnaholeMotion.MoitonScriptData> motionScriptDataDic = new Dictionary<MaidTouch.POINT, OnaholeMotion.MoitonScriptData>();
  65. private Dictionary<MaidTouch.POINT, OnaholeMotion.BlendAnimeData> blendAnimeDic = new Dictionary<MaidTouch.POINT, OnaholeMotion.BlendAnimeData>();
  66. private Animation anime;
  67. private Dictionary<string, string> pistonSe = new Dictionary<string, string>();
  68. private OnaholeMotion.BlendAnimeData beforeBlendData;
  69. private string motionScriptFN = string.Empty;
  70. private string[] motionScriptTextArray;
  71. public float startWaitTime = 1f;
  72. public float plugLerp;
  73. public float pistonUnPlugWaitTime;
  74. private bool finishFlag;
  75. private bool hakaFlag;
  76. public string animeTypeName = string.Empty;
  77. private bool insertFlag;
  78. [SerializeField]
  79. private string lastAnimeName = string.Empty;
  80. public bool animeEndCheck;
  81. public bool nextModePermit;
  82. [Obsolete]
  83. public bool nextModePermitHarf;
  84. public string blendAnimeName = string.Empty;
  85. public string blendAnimeNameBefore = string.Empty;
  86. public float blendPlugMultiple;
  87. [SerializeField]
  88. [Obsolete]
  89. public float blendStopTime;
  90. public List<string> loadedAnimeList = new List<string>();
  91. public List<string> loadedAnimeListBefore = new List<string>();
  92. public OnaholeFeelings.PISTON_SPEED playedPistonSeType = OnaholeFeelings.PISTON_SPEED.NO_DATA;
  93. private float playPistonSeCoolTime;
  94. public List<string> debugStringList = new List<string>();
  95. public enum MODE
  96. {
  97. START,
  98. WAIT,
  99. PLUG,
  100. PISTON,
  101. UNPLUG,
  102. SHASEI,
  103. SHASEIGO,
  104. SHASEIGO_IN
  105. }
  106. public enum ANIM_TYPE
  107. {
  108. NON,
  109. WAIT,
  110. PLUG,
  111. PISTON,
  112. UNPLUG,
  113. PISTON_BLEND,
  114. SHASEI_NAKA,
  115. SHASEIGO_NAKA,
  116. SHASEIGO_NAKA_IN,
  117. SHASEI_SOTO,
  118. SHASEIGO_SOTO,
  119. SHASEIGO_SOTO_IN,
  120. MAX
  121. }
  122. public enum PISTON_MODE
  123. {
  124. CHANGE,
  125. PISTON
  126. }
  127. private enum BlendAnime
  128. {
  129. Start,
  130. Inter,
  131. End
  132. }
  133. private class MoitonScriptData
  134. {
  135. public string fileName = string.Empty;
  136. public Dictionary<OnaholeMotion.ANIM_TYPE, string> labelDic = new Dictionary<OnaholeMotion.ANIM_TYPE, string>();
  137. public Dictionary<OnaholeMotion.ANIM_TYPE, string> labelDic2 = new Dictionary<OnaholeMotion.ANIM_TYPE, string>();
  138. }
  139. private class BlendAnimeData
  140. {
  141. [Obsolete("初期化時に代入されているが、利用している箇所がない")]
  142. public string key = string.Empty;
  143. [Obsolete("そもそも参照している場所がひとつもない")]
  144. public MaidTouch.POINT point;
  145. public AnimationState start;
  146. public AnimationState end;
  147. public Dictionary<int, AnimationState> inter = new Dictionary<int, AnimationState>();
  148. }
  149. }