@@ -61,6 +61,13 @@ Vector3 EvaluateBinding(PluginCameraHelper helper, string binding)
6161 default : return Vector3 . zero ;
6262 }
6363 }
64+
65+ public override string ToString ( )
66+ {
67+ return "Camera: " + this . Name + ", Type: " + this . Type . ToString ( ) + ", PositionBinding: " + this . PositionBinding + ", PositionOffset: "
68+ + this . PositionOffset . ToString ( ) + ", LookAt: " + this . LookAt . ToString ( ) + ", MinTime: " + this . MinTime . ToString ( ) + ", MaxTime: "
69+ + this . MaxTime . ToString ( ) + ", TransitionTime: " + this . TransitionTime . ToString ( ) + ", TransitionCurve: " + this . TransitionCurve . ToString ( ) ;
70+ }
6471}
6572
6673public static class CameraPluginSettings
@@ -95,7 +102,7 @@ public static void LoadSettings()
95102 ws . WriteLine ( " PositionBinding='playerWaist'" ) ;
96103 ws . WriteLine ( " PositionOffset={x='2.0', y='1.0', z='-3.0'} " ) ;
97104 ws . WriteLine ( " LookAt={x='-2.0', y='0.0', z='5.0'} " ) ;
98- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
105+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
99106 ws . WriteLine ( "}" ) ;
100107 ws . WriteLine ( "Camera={" ) ;
101108 ws . WriteLine ( " Name='TopRight'" ) ;
@@ -105,7 +112,7 @@ public static void LoadSettings()
105112 ws . WriteLine ( " LookAt={x='0.0', y='-0.5', z='1.0'} " ) ;
106113 ws . WriteLine ( " MinTime='4.0' " ) ;
107114 ws . WriteLine ( " MaxTime='8.0' " ) ;
108- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
115+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
109116 ws . WriteLine ( "}" ) ;
110117 ws . WriteLine ( "Camera={" ) ;
111118 ws . WriteLine ( " Name='Top'" ) ;
@@ -115,7 +122,7 @@ public static void LoadSettings()
115122 ws . WriteLine ( " LookAt={x='0.0', y='-0.5', z='1.0'} " ) ;
116123 ws . WriteLine ( " MinTime='4.0' " ) ;
117124 ws . WriteLine ( " MaxTime='8.0' " ) ;
118- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
125+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
119126 ws . WriteLine ( "}" ) ;
120127 ws . WriteLine ( "Camera={" ) ;
121128 ws . WriteLine ( " Name='TopLeft'" ) ;
@@ -125,7 +132,7 @@ public static void LoadSettings()
125132 ws . WriteLine ( " LookAt={x='0.0', y='-0.5', z='1.0'} " ) ;
126133 ws . WriteLine ( " MinTime='4.0' " ) ;
127134 ws . WriteLine ( " MaxTime='8.0' " ) ;
128- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
135+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
129136 ws . WriteLine ( "}" ) ;
130137 ws . WriteLine ( "Camera={" ) ;
131138 ws . WriteLine ( " Name='BottomRight'" ) ;
@@ -135,7 +142,7 @@ public static void LoadSettings()
135142 ws . WriteLine ( " LookAt={x='0.0', y='0.0', z='1.0'} " ) ;
136143 ws . WriteLine ( " MinTime='4.0' " ) ;
137144 ws . WriteLine ( " MaxTime='8.0' " ) ;
138- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
145+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
139146 ws . WriteLine ( "}" ) ;
140147 ws . WriteLine ( "Camera={" ) ;
141148 ws . WriteLine ( " Name='BottomLeft'" ) ;
@@ -145,7 +152,7 @@ public static void LoadSettings()
145152 ws . WriteLine ( " LookAt={x='0.0', y='0.0', z='1.0'} " ) ;
146153 ws . WriteLine ( " MinTime='4.0' " ) ;
147154 ws . WriteLine ( " MaxTime='8.0' " ) ;
148- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
155+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
149156 ws . WriteLine ( "}" ) ;
150157 ws . WriteLine ( "Camera={" ) ;
151158 ws . WriteLine ( " Name='Orbital1'" ) ;
@@ -158,8 +165,8 @@ public static void LoadSettings()
158165 ws . WriteLine ( " LookAt={x='0.0', y='0.0', z='0.0'} " ) ;
159166 ws . WriteLine ( " MinTime='8.0' " ) ;
160167 ws . WriteLine ( " MaxTime='8.0' " ) ;
161- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
162- ws . WriteLine ( " ReleaseBehindPlayer='true'" ) ;
168+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
169+ ws . WriteLine ( " ReleaseBehindPlayer='true'" ) ;
163170 ws . WriteLine ( "}" ) ;
164171 ws . WriteLine ( "Camera={" ) ;
165172 ws . WriteLine ( " Name='Orbital2'" ) ;
@@ -172,8 +179,8 @@ public static void LoadSettings()
172179 ws . WriteLine ( " LookAt={x='0.0', y='0.0', z='0.0'} " ) ;
173180 ws . WriteLine ( " MinTime='8.0' " ) ;
174181 ws . WriteLine ( " MaxTime='8.0' " ) ;
175- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
176- ws . WriteLine ( " ReleaseBehindPlayer='true'" ) ;
182+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
183+ ws . WriteLine ( " ReleaseBehindPlayer='true'" ) ;
177184 ws . WriteLine ( "}" ) ;
178185 ws . WriteLine ( "Camera={" ) ;
179186 ws . WriteLine ( " Name='Orbital3'" ) ;
@@ -186,8 +193,8 @@ public static void LoadSettings()
186193 ws . WriteLine ( " LookAt={x='0.0', y='0.0', z='0.0'} " ) ;
187194 ws . WriteLine ( " MinTime='8.0' " ) ;
188195 ws . WriteLine ( " MaxTime='8.0' " ) ;
189- ws . WriteLine ( " TransitionTime='1 .0'" ) ;
190- ws . WriteLine ( " ReleaseBehindPlayer='true'" ) ;
196+ ws . WriteLine ( " TransitionTime='2 .0'" ) ;
197+ ws . WriteLine ( " ReleaseBehindPlayer='true'" ) ;
191198 ws . WriteLine ( "}" ) ;
192199 }
193200 }
@@ -201,20 +208,20 @@ public static void LoadSettings()
201208 /// <summary>
202209 /// Loads a Specfic Settings File
203210 /// </summary>
204- /// <param name="settingsFile">Designed for song-specific settings</param>
211+ /// <param name="settingsFile">Designed for song-specific settings - only checks the latter portion of the filename </param>
205212 public static void LoadSettings ( string settingsFile )
206213 {
207214 string docPath = Environment . GetFolderPath ( Environment . SpecialFolder . MyDocuments ) ;
208215 string settingLoc = Path . Combine ( docPath , @"LIV\Plugins\CameraBehaviours\FriesBSCam\" ) ;
209216
210- settingLoc = Path . Combine ( settingLoc , settingsFile ) ;
217+ string [ ] files = Directory . GetFiles ( settingLoc , "*" + settingsFile , SearchOption . TopDirectoryOnly ) ;
211218
212219 // Check to see if the file exists.
213- if ( File . Exists ( @settingLoc ) )
220+ if ( files . Length > 0 )
214221 {
215222 MenuCamera = new CameraData ( ) ;
216223 CameraDataList = new List < CameraData > ( ) ;
217- ParseSettingsFile ( @settingLoc ) ;
224+ ParseSettingsFile ( files [ 0 ] ) ;
218225 SongSpecific = true ;
219226 }
220227 }
@@ -252,6 +259,8 @@ public static void ParseSettingsFile(string fileName)
252259 MenuCamera . PositionBinding = "playerWaist" ;
253260 MenuCamera . PositionOffset = new Vector3 ( 2.0f , 1.0f , - 3.0f ) ;
254261 MenuCamera . LookAt = new Vector3 ( - 2.0f , 0.0f , 5.0f ) ;
262+ MenuCamera . TransitionTime = 2.0f ;
263+ MenuCamera . TransitionCurve = CameraTransitionCurve . Linear ;
255264 }
256265
257266 var camera = root . GetChild ( "Camera" ) ;
0 commit comments