xmoonproductions.org https://xmoonproductions.org/ |
|
Animation help https://xmoonproductions.org/viewtopic.php?f=27&t=4330 |
Page 4 of 4 |
Author: | Eskarn [ Tue Jan 12, 2016 3:27 pm ] |
Post subject: | Re: Animation help |
for now just use this but its not the propper way to do it jiggle0_state.dat or whatever its called now Code: [FINISH] { loc.sp.pose_type = STAND; loc.sp.pose_id = 0; SetPose(loc.sp); } jiggle0_ref.dat Code: stop.you.set = { loc.ss.state = MOVE0; state.dyn.me.do.state2 = FINISH; loc.ss.state3 = STAND; set_state(loc.ss); } stop.you.if = stop.you.set; |
Author: | pavar [ Tue Jan 12, 2016 3:36 pm ] |
Post subject: | Re: Animation help |
Eskarn wrote: for now just use this but its not the propper way to do it jiggle0_state.dat or whatever its called now Code: [FINISH] { loc.sp.pose_type = STAND; loc.sp.pose_id = 0; SetPose(loc.sp); } jiggle0_ref.dat Code: stop.you.set = { loc.ss.state = MOVE0; state.dyn.me.do.state2 = FINISH; loc.ss.state3 = STAND; set_state(loc.ss); } stop.you.if = stop.you.set; Thank you. I will try it when I get back from work. The most probable issue is an error in the CASE. According to the brain debug, the pose end normally (pose ready) but while the brain recognize the STAND command, it does not trigger it properly. |
Author: | pavar [ Tue Jan 12, 2016 10:37 pm ] |
Post subject: | Re: Animation help |
Unfortunately, no joy. I think I will start with a blank script and a fresh copy of the dungeon pack. Perhaps I messed up something in the peripherial files. @Eskarn here is the state file, maybe you can find the error Code: //------------------------------------------- <tablefuck0_state> loc.res = pose_state(); [loc.res] return; case (state.dyn.me.do.state2) { [START1] { loc.sp.pose_type = STAND; loc.sp.pose_id = 0; loc.sp.waypoint = "DUNGEON1:TABLEBEND"; do_set_timer(1); loc.sp.exact = 1; SetPose(loc.sp); state.dyn.me.do.pose.sp = loc.sp; state.dyn.me.do.state2 = START2; state.dyn.me.do.pose.fstate2 = FINISH; state.dyn.me.do.state2 = POSE_WAIT; } [START2] { loc.sp.pose_type = TABLEFUCK; loc.sp.pose_id = 0; SetPose(loc.sp); state.dyn.me.do.pose.sp = loc.sp; state.dyn.me.do.pose.state2 = START_tablefuck; state.dyn.me.do.state2 = POSE_WAIT; } [FINISH] { loc.sp.pose_type = STAND; loc.sp.pose_id = 0; SetPose(loc.sp); } [JIGGLING] { loc.ts = GetTs(); [loc.ts >= state.dyn.me.do.ts] [state.dyn.me.do.pose.finish] { // Reset head loc.hs.state = NONE; loc.hs.dur = 0; loc.hs.scale = 1.0; SetHeadState(loc.hs); basic_state(); } } [START_tablefuck] { tablefuck0_notify_actor_start(); // Start tablefuck( task loc.tb.mood = get_task_mood(); loc.tb.actor ^= state.dyn.me.do.par; start_task_tablefuck(loc.tb); // Notify main [state.dyn.me.do.par == null] { loc.be.obj = state.dyn.me.avatar.id; loc.be.id = CHAR; loc.be.action = "start_tablefuck"; SendBaseEvent(loc.be); } state.dyn.me.pose.ia_type = null; state.dyn.me.do.state2 = GIVING_tablefuck; } [GIVING_tablefuck] { loc.res = tablefuck0_interact(); [loc.res] return; loc.down = true; loc.res = react_clamp(loc); [loc.res] return; loc.down = true; loc.res = react_spank(loc); [loc.res] return; [state.dyn.me.do.pose.finish] { tablefuck0_notify_actor_stop(); // Stop tablefuck task stop_task_tablefuck(); basic_state(); return; } // If ready [state.dyn.me.task.tablefuck.state == READY] { // Restart init_task_tablefuck_state(); tablefuck0_notify_actor_restart(); } } [STANDUP] { tablefuck0_notify_actor_stop(); // Stop tablefuck task stop_task_tablefuck(); // Standup loc.sp.pose_type = STAND; loc.sp.pose_id = 0; SetPose(loc.sp); state.dyn.me.do.pose.sp = loc.sp; // state.dyn.me.do.pose.state2 = PANTS_UP; state.dyn.me.do.state2 = POSE_WAIT; } } </tablefuck0_state> //------------------------------------------- <tablefuck0_interact> [state.dyn.me.pose.ia_type != null] { res = true; case (state.dyn.me.pose.ia_type) { [STAND] { state.dyn.me.do.state2 = STANDUP; } [TABLEFUCK] { tablefuck0_notify_actor_stop(); // Stop tablefuck task stop_task_tablefuck(); basic_pass_ia(); return; } } state.dyn.me.pose.ia_type = null; } else res = false; </tablefuck0_interact> //------------------------------------------- <tablefuck0_notify_actor_start> [state.dyn.me.do.par == null] return; // Notify actor loc.be.obj = state.dyn.me.do.par; loc.be.id = CHAR; loc.be.action = "start_tablefuck"; SendBaseEvent(loc.be); </tablefuck0_notify_actor_start> //------------------------------------------- <tablefuck0_notify_actor_stop> [par != null] loc.be.obj = par; else loc.be.obj ^= state.dyn.me.do.par; [loc.be.obj == null] return; // Notify actor loc.be.id = CHAR; loc.be.action = "stop_tablefuck"; SendBaseEvent(loc.be); </tablefuck0_notify_actor_stop> //------------------------------------------- <tablefuck0_notify_actor_restart> [state.dyn.me.do.par == null] return; // Notify actor loc.be.obj = state.dyn.me.do.par; loc.be.id = CHAR; loc.be.action = "restart_tablefuck"; SendBaseEvent(loc.be); </tablefuck0_notify_actor_restart> |
Page 4 of 4 | All times are UTC |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |