/* * * public static void sys_env(VNNeoController game, SystemData param) * { * sys_env(game, param.env); * } * * public static void sys_env(VNNeoController game, (int no, bool play) param) * { * // set evn sound, param = (evn no, play), StudioNeo only * if (game.isStudioNEO) * { * if (game.studio.envCtrl.no != param.no) * { * game.studio.envCtrl.Play(param.no); * } * if (game.studio.envCtrl.play != param.play) * { * if (param.play) * { * game.studio.envCtrl.Play(); * } * else * { * game.studio.envCtrl.Stop(); * } * } * } * else * { * Console.WriteLine("sys_env only supports HoneySelect Studio Neo"); * } * } */ public static void sys_wav(VNNeoController game, SystemData param) { if (param.wav is Wav_s wav) { sys_wav(game, wav); } }
public static void resetConsole(VNNeoController game) { sceneConsoleGUIClose(); sceneConsole = null; sceneConsole = new SceneConsole(game); UI.sceneConsoleGUIStart(game); }
public static void sys_bg_png(VNNeoController game, string param = "") { string pngInDefault; // set background png, param = png file name var pngName = param.Trim(); if (pngName != "") { if (!pngName.ToLower().EndsWith(".png")) { pngName += ".png"; } // load png in game scene folder if existed var pngInScene = combine_path(game.get_scene_dir(), game.sceneDir, pngName); if (File.Exists(pngInScene)) { game.scene_set_bg_png(pngName); return; } // load png in game default background folder if existed pngInDefault = Path.GetFullPath(combine_path(Application.dataPath, "..", "UserData", "bg", pngName)); if (File.Exists(pngInDefault)) { game.scene_set_bg_png_orig(pngName); return; } } // remove if param == "" or file not existed game.scene_set_bg_png_orig(""); }
public static void cam_rotate(VNNeoController game, Vector3 param) { CamData camobj = game.get_camera_num(0); Vector3 v3 = camobj.rotation; camobj.rotation = new Vector3(v3.x + param.x, v3.y + param.y, v3.z + param.z); game.move_camera_obj(camobj); }
public static void map_option(VNNeoController game, bool param) { Map map; // set map option visible: param = 1/0 map = Map.Instance; map.visibleOption = param; }
public static void sys_skip(VNNeoController game, int param) { // skip some steps, param: steps to skip, should be > 0 foreach (var i in Enumerable.Range(0, param)) { //game.nextTexts.Remove(0); TODO } }
public static void sys_map(VNNeoController game, int param) { // set map if (param != game.studio_scene.mapInfo.no) { game.studio.AddMap(param); } }
/* * * public static void cam_zoom(VNNeoController game, (float zoom_delta, float duration) param) * { * var camobj = game.get_camera_num(0); * var dv3 = camobj.distance; * // param = zoom_delta, use positive value to zoom in, and negative value for zoom out * camobj.distance = new Vector3(dv3.x, dv3.y, dv3.z + param.zoom_delta); * game.anim_to_camera_obj(param.duration, camobj); * } * * public static void cam_zoom(VNNeoController game, (float zoom_delta, float duration, string style) param) * { * var camobj = game.get_camera_num(0); * var dv3 = camobj.distance; * // param = zoom_delta, use positive value to zoom in, and negative value for zoom out * camobj.distance = new Vector3(dv3.x, dv3.y, dv3.z + param.zoom_delta); * game.anim_to_camera_obj(param.duration, camobj, param.style); * } */ public static void cam_zoom(VNNeoController game, CamData param) { var camobj = game.get_camera_num(0); var dv3 = camobj.distance; // param = zoom_delta, use positive value to zoom in, and negative value for zoom out camobj.distance = new Vector3(dv3.x, dv3.y, dv3.z + param.zoom_delta); game.anim_to_camera_obj(param.duration, camobj, param.style); }
public static void cam_zoom(VNNeoController game, float zoom_delta) { var camobj = game.get_camera_num(0); var dv3 = camobj.distance; // param = zoom_delta, use positive value to zoom in, and negative value for zoom out camobj.distance = new Vector3(dv3.x, dv3.y, dv3.z + zoom_delta); game.move_camera_obj(camobj); }
// :type game: vngameengine.VNNeoController public static string get_camera_name(VNNeoController game) { // return the current active camera's name, or return None if no camera actived. if (game.studio.ociCamera != null) { return(game.studio.ociCamera.name); } return(null); }
public static void ministates_run_elem_by_name(VNNeoController game, string name) { var elem = ministates_get_elem_by_name(game, name); if (elem != null) { ministates_run_elem(game, elem); } }
/* * public static void cam_rotate(VNNeoController game, (Vector3 vec, float duration) param) * { * CamData camobj = game.get_camera_num(0); * Vector3 v3 = camobj.rotation; * // param = ((rot_delta_x, rot_delta_y, rot_delta_z), duration) * camobj.rotation = new Vector3(v3.x + param.vec.x, v3.y + param.vec.y, v3.z + param.vec.z); * game.anim_to_camera_obj(param.duration, camobj); * } * * public static void cam_rotate(VNNeoController game, (Vector3 vec, float duration, string style) param) * { * CamData camobj = game.get_camera_num(0); * Vector3 v3 = camobj.rotation; * // param = ((rot_delta_x, rot_delta_y, rot_delta_z), duration) * camobj.rotation = new Vector3(v3.x + param.vec.x, v3.y + param.vec.y, v3.z + param.vec.z); * game.anim_to_camera_obj(param.duration, camobj, style: param.style); * } * * public static void cam_rotate(VNNeoController game, (Vector3 vec, float duration, string style, GameFunc onCameraEnd) param) * { * CamData camobj = game.get_camera_num(0); * Vector3 v3 = camobj.rotation; * // param = ((rot_delta_x, rot_delta_y, rot_delta_z), duration) * camobj.rotation = new Vector3(v3.x + param.vec.x, v3.y + param.vec.y, v3.z + param.vec.z); * game.anim_to_camera_obj(param.duration, camobj, style: param.style, param.onCameraEnd); * } */ public static void cam_rotate(VNNeoController game, CamData param) { CamData camobj = game.get_camera_num(0); Vector3 v3 = camobj.rotation; // param = ((rot_delta_x, rot_delta_y, rot_delta_z), duration) camobj.rotation = new Vector3(v3.x + param.rotation.x, v3.y + param.rotation.y, v3.z + param.rotation.z); game.anim_to_camera_obj(param.duration, camobj, style: param.style); }
public static void sys_wav(VNNeoController game, Wav_s param) { string wavRevPath; // set outside wav sound, param = (wav file, play, repeat) var wavName = param.fileName.Trim(); if (wavName != "") { if (!wavName.ToLower().EndsWith(".wav")) { wavName += ".wav"; } // load wav in game scene folder if existed var wavInScene = combine_path(game.get_scene_dir(), game.sceneDir, wavName); if (File.Exists(wavInScene)) { wavRevPath = combine_path("..", "studio", "scene", game.sceneDir, wavName); if (game.studio.outsideSoundCtrl.fileName != wavRevPath) { game.studio.outsideSoundCtrl.Play(wavRevPath); } } else { // load wav in game default audio folder if existed var wavInDefault = Path.GetFullPath(combine_path(Application.dataPath, "..", "UserData", "audio", wavName)); if (File.Exists(wavInDefault)) { if (game.studio.outsideSoundCtrl.fileName != wavName) { game.studio.outsideSoundCtrl.Play(wavName); } } } } if (game.studio.outsideSoundCtrl.play != param.play || wavName == "") { if (param.play) { game.studio.outsideSoundCtrl.Play(); } else { game.studio.outsideSoundCtrl.Stop(); } } if (param.repeat) { game.studio.outsideSoundCtrl.repeat = BGMCtrl.Repeat.All; } else { game.studio.outsideSoundCtrl.repeat = BGMCtrl.Repeat.None; } }
override public void setup(VNController controller) { //super(SkinDefault, self).setup(controller) this.controller = (VNNeoController)controller; controller.wwidth = this.wwidth; controller.wheight = this.wheight; controller.windowName = ""; controller.windowRect = new Rect(Screen.width / 2 - controller.wwidth / 2, Screen.height - controller.wheight - 10, controller.wwidth, controller.wheight); this.controller.windowStyle = this.controller.windowStyleDefault; }
/* TODO * public static void ministates_run_savedstate(VNNeoController game, Dictionary<string, TreeNodeObject> state) * { * var elDataObj = state; * foreach (var key in elDataObj.Keys) * { * var elId = Convert.ToInt32(key[4]); * var objctrl = game.studio.dicObjectCtrl[elId]; * var actprop = HSNeoOCI.create_from(objctrl); * if (actprop is Actor chara) * { * chara.as_actor.import_status_diff_optimized(elDataObj[key]); * } * else if (actprop is HSNeoOCIProp prop) * { * prop.as_prop.import_status_diff_optimized(elDataObj[key]); * } * } * } */ public static TreeNodeObject ministates_get_elem_by_name(VNNeoController game, string name) { var list = ministates_get_list(game); foreach (var elemFull in list) { if (elemFull.name == name) { return(elemFull.obj); } } return(null); }
public static bool sys_wait_voice(VNNeoController game, string param) { // wait voice of actor over: param = actorID // return True if voice is over or actor not found VNActor.Actor actor = game.GetActor(param); if (actor is VNActor.Actor act) { return(!act.IsVoicePlay); } else { return(true); } }
public static void sys_btn_next(VNNeoController game, string param = "Next >>") { // param = "next button text" //game.btnNextText = param /* TODO * game.set_buttons(new List<string> { * param * }, * new List<(Action<object>, object)> { * (game.NextText, null) * }); */ }
public static bool sys_wait_anime(VNNeoController game, string param) { // wait anime of actor play once: param = actorID // return True if anime is over or actor not found VNActor.Actor actor = game.GetActor(param); if (actor is VNActor.Actor act) { return(act.IsAnimeOver); } else { return(true); } }
// main class // ::::: Console init and window ::::: public static void toggle_scene_console(VNNeoController game) { if (sceneConsole == null) { sceneConsole = new SceneConsole(game); } if (sceneConsole.guiOnShow) { sceneConsoleGUIClose(); } else { UI.sceneConsoleGUIStart(game); } }
public static void sys_bgm(VNNeoController game, BGM_s param) { // set bgm, param = (bgm no, play) if (game.studio.bgmCtrl.no != param.no) { game.studio.bgmCtrl.Play(param.no); } if (game.studio.bgmCtrl.play != param.play) { if (param.play) { game.studio.bgmCtrl.Play(); } else { game.studio.bgmCtrl.Stop(); } } }
public static Dictionary <string, TreeNodeObject> ministates_get_elem(VNNeoController game, TreeNodeObject elem) { var res = new Dictionary <string, TreeNodeObject> { }; foreach (var elData in elem.child) { var data = Int32.Parse(elData.textName); var bytes = BitConverter.GetBytes(data); var elDataObj = MessagePackSerializer.Deserialize <Dictionary <string, TreeNodeObject> >(bytes); foreach (KeyValuePair <string, TreeNodeObject> kv in elDataObj) { res[kv.Key] = kv.Value; } } return(res); }
/* * public static void cam_zoom(VNNeoController game, (float zoom_delta, float duration, string style, GameFunc onCameraEnd) param) * { * var camobj = game.get_camera_num(0); * var dv3 = camobj.distance; * // param = zoom_delta, use positive value to zoom in, and negative value for zoom out * camobj.distance = new Vector3(dv3.x, dv3.y, dv3.z + param.zoom_delta); * game.anim_to_camera_obj(param.duration, camobj, param.style, param.onCameraEnd); * } */ // :type game: vngameengine.VNNeoController public static void set_camera_name(VNNeoController game, string name) { // set the named camera as active camera, if name is None or not found, switch to default camera // if active an object camera, return true. Or return false if non object camera actived. foreach (var ociobj in game.studio.dicObjectCtrl.Values) { if (ociobj is OCICamera cam) { if (cam.name == name) { if (game.studio.ociCamera != cam) { game.studio.ChangeCamera(cam); } } return; } } game.studio.ChangeCamera(null); }
public static void sys_char_light(VNNeoController game, CharLight_s param) { //SceneInfo sc; // set chara light // param for HS, KK, AI = (color, intensity, rot_y, rot_x, shadow) // param for PH = (color, intensity, rot_y, rot_x, shadow, method) /* if (game.isStudioNEO) * { * sc = game.studio_scene; * sc.cameraLightColor.SetDiffuseRGB(tuple4_2_color(param[0])); * sc.cameraLightIntensity = param[1]; * sc.cameraLightRot[0] = param[2]; * sc.cameraLightRot[1] = param[3]; * sc.cameraLightShadow = param[4]; * game.studio.cameraLightCtrl.Reflect(); * } * else if (game.isPlayHomeStudio) * { * sc = game.studio_scene; * sc.cameraLightColor = tuple4_2_color(param[0]); * sc.cameraLightIntensity = param[1]; * sc.cameraLightRot[0] = param[2]; * sc.cameraLightRot[1] = param[3]; * sc.cameraLightShadow = param[4]; * sc.cameraMethod = param[5]; * game.studio.cameraLightCtrl.Reflect(); * }*/ var cl = game.studio_scene.charaLight; cl.color = param.rgbDiffuse; cl.intensity = param.cameraLightIntensity; cl.rot[0] = param.rot_y; cl.rot[1] = param.rot_x; cl.shadow = param.cameraLightShadow; game.studio.cameraLightCtrl.Reflect(); }
//import_or_reload("sceneutils") //import_or_reload("posesavestate") // :::::::::: JSON Derulo :::::::::::: // :::::::::: For debug only :::::::::::: // :type game:vngameengine.VNNeoController public static void start(VNNeoController game) { if (game.isClassicStudio) { game.show_blocking_message_time("This only for NEO-engines, sorry"); return; } game.gdata.hook_update_allowed = true; if (sceneConsole == null) { sceneConsole = new SceneConsole(game); } UI.sceneConsoleGUIStart(game); game.scenef_register_actorsprops(); // if no blocks - autoload if (sceneConsole.block.Count == 0) { if (HSNeoOCIFolder.find_single_startswith("-scenesavestate:") != null) { sceneConsole.loadSceneData(); sceneConsole.show_blocking_message_time_sc("Scene data was auto-loaded!"); } } }
public static void sys_next(VNNeoController game, SystemData param) { return; }
public static void sys_map_pos(VNNeoController game, Vector3 param) { game.studio_scene.mapInfo.ca.pos = param; }
public static void sys_branch_skip(VNNeoController game, SystemData param) { return; }
public static void cam_goto_preset(VNNeoController game, CamData param) { // param = (set, duration) game.anim_to_camera_num(param.duration, param.camnum); }
/* * public static void cam_goto_pos(VNNeoController game, (Vector3 pos, Vector3 distance, Vector3 rotate) param) * { * game.move_camera(pos: param.pos, distance: param.distance, rotate: param.rotate); * } * * public static void cam_goto_pos(VNNeoController game, (Vector3 pos, Vector3 distance, Vector3 rotate, float duration, string style) param) * { * game.anim_to_camera(param.duration, pos: param.pos, distance: param.distance, rotate: param.rotate, style: param.style); * } * * public static void cam_goto_pos(VNNeoController game, (Vector3 pos, Vector3 distance, Vector3 rotate, float duration) param) * { * game.anim_to_camera(param.duration, pos: param.pos, distance: param.distance, rotate: param.rotate); * } * * public static void cam_goto_pos(VNNeoController game, (Vector3 pos, Vector3 distance, Vector3 rotate, float duration, string style, float fov) param) * { * game.anim_to_camera(param.duration, pos: param.pos, distance: param.distance, rotate: param.rotate, fov: param.fov, style: param.style); * } */ public static void cam_goto_pos(VNNeoController game, CamData param) { game.anim_to_camera(param.duration, pos: param.position, distance: param.distance, rotate: param.rotation, fov: param.fov, style: param.style); }
/* * public static void cam_goto_preset(VNNeoController game, (int camnum, int duration, string style) param) * { * game.anim_to_camera_num(param.duration, param.camnum, param.style); * } * * * public static void cam_goto_preset(VNNeoController game, (int camnum, int duration, string style, GameFunc onCamEnd) param) * { * game.anim_to_camera_num(param.duration, param.camnum, param.style, param.onCamEnd); * } */ public static void cam_goto_preset(VNNeoController game, int param) { game.to_camera(param); }