View unanswered posts | View active topics It is currently Thu Mar 28, 2024 9:39 am



Reply to topic  [ 1 post ] 
 About script and animation 
Author Message
Rank 1
Rank 1

Joined: Sun Dec 28, 2014 4:08 pm
Posts: 1
First of all, sorry for my english

I wonder if it is possible to combined animation?

for example \init\std\base\char\brain\code\task\task_backass.dat

laying is
pose_type = BUTT_BACK0;

and the gesture is
SetGesture (BUTT_BACK0_LEG);

I would like combined with
SetGesture (HAND_BACK);

I see that it is possible to do so "task_blowjob.dat"
where the gesture is "SetGesture (STROKE), or SetGesture (SCARED);"
and the animation "I supose" does not apply to hand.

my first question is:
is it possible to dissect an animation by bia a parameter of collition
for example, eliminate the hand of annimation or legs ... just stating that the animation only affects the body
via:
move_type
int2_type
scoll_type
coll_type
ia_type
vwcoll_type


and my second question:
what is
loc.sm.layer = 3;
loc.sm.action = DOWIGGLE;
loc.sm.wig_speed = 0.25;
loc.sm.wig_max = 0.2;
SetMovieAction(loc.sm);

loc.sm2.layer = 3;
loc.sm2.action = NEXT;
loc.sm2.speed = 0.5;
SetMovieAction(loc.sm2);

the return is
[state.dyn.me.movie.event3 == WIGGLE1]
[state.dyn.me.movie.event3 == WIGGLE0]

for me it is the index put on animation
animation go pointer 0 to 1 and return to pointeur 0
i have nothing to read the animation file "*.bvh" and with hex texte edidor i found nothing interesting.
i am wrong? and where can i foud WIGGLE index

and my last question:
what do and what is the difference between
task_set_timer(0);
and
do_set_timer(0);
and why if i remove it it's won't work?

i have cup all i can on task_backass.dat
it is a simple animation with:
[MOVE] // for init
[PUSH_IN]
[PULL_OUT]


if you copy past the folow exemple in
\init\std\base\char\brain\code\task\task_backass.dat
Don't forgot backup
and change "SetGesture(BUTT_BACK0_LEG);"
with another gesture foud in init\std\base\char\char_base.dat
exemple "SetGesture(SQUAT_LEG);"
you can see the animation ingame when you start backass job.

    //-------------------------------------------

    <start_task_backass>

    [state.dyn.me.do.task == BACKASS] return;

    // Set task
    state.dyn.me.do.task = BACKASS;

    // Start start state
    set_task_backass_state(MOVE);

    // Init counters
    state.dyn.me.task.backass.speed_count = 0;

    </start_task_backass>

    //-------------------------------------------

    <stop_task_backass>

    [state.dyn.me.do.task != BACKASS] return;

    // Reset gesture
    SetGesture(NONE);

    // Reset task
    state.dyn.me.do.task = NONE;

    </stop_task_backass>

    //-------------------------------------------

    <task_backass_talk>

    // Talk
    talk.s = par;

    </task_backass_talk>

    //-------------------------------------------

    <init_task_backass>

    // We should be in backass task
    [state.dyn.me.do.task != BACKASS] Error("Should be in backass task");

    // Derive state
    case (state.dyn.me.task.backass.state)
    {
    [MOVE]
    [PUSH_IN]
    [PULL_OUT]

    state.dyn.me.task.backass.state = MOVE;

    }

    // Init state
    set_task_backass_state(state.dyn.me.task.backass.state);

    </init_task_backass>

    //-------------------------------------------

    <init_task_backass_state>

    // Set next state
    set_task_backass_state(MOVE);

    </init_task_backass_state>

    //-------------------------------------------

    <set_task_backass_state>

    // Set state
    state.dyn.me.task.backass.state = par;

    // Init task data
    state.dyn.me.task.ts = null;

    </set_task_backass_state>

    //-------------------------------------------

    <run_task_backass>

    case (state.dyn.me.task.backass.state)
    {


    [MOVE]
    {
    // if i remove "task_set_timer(0);" won't work ?
    task_set_timer(0);
    loc.speed = 1.1;

    state.dyn.me.task.backass.speed = loc.speed;
    loc.ts = GetTs();
    [loc.ts >= state.dyn.me.task.ts]
    {
    state.dyn.me.movie.event3 = null;

    SetGesture(BUTT_BACK0_LEG);

    // Stop at markers
    loc.sm.layer = 3;
    loc.sm.action = DOWIGGLE;
    loc.sm.wig_speed = 0.6;
    loc.sm.wig_max = 0.6;
    SetMovieAction(loc.sm);

    // We are at marker0
    // Goto marker1
    loc.sm2.layer = 3;
    loc.sm2.action = NEXT;
    loc.sm2.speed = 0.6;
    SetMovieAction(loc.sm2);

    state.dyn.me.task.backass.state = PUSH_IN;
    }
    }
    [PUSH_IN]
    {
    // If pushed in
    [state.dyn.me.movie.event3 == WIGGLE1]
    {
    // Pull back
    loc.sm2.layer = 3;
    loc.sm2.action = NEXT;
    loc.sm2.speed = state.dyn.me.task.backass.speed;
    SetMovieAction(loc.sm2);

    state.dyn.me.movie.event3 = null;

    state.dyn.me.task.backass.state = PULL_OUT;
    }
    }
    [PULL_OUT]
    {
    // If pulled out
    [state.dyn.me.movie.event3 == WIGGLE0]
    {
    state.dyn.me.task.backass.state = PULL_OUT;
    loc.ts = GetTs();
    [loc.ts < state.dyn.me.task.ts] return;
    // Push in
    loc.sm2.layer = 3;
    loc.sm2.action = NEXT;
    loc.sm2.speed = state.dyn.me.task.backass.speed;
    SetMovieAction(loc.sm2);

    // Increase speed
    //state.dyn.me.task.backass.speed += 0.1;

    state.dyn.me.movie.event3 = null;

    state.dyn.me.task.backass.state = PUSH_IN;
    }
    }
    }
    </run_task_backass>

    //-------------------------------------------


thank you for answering


Sun Dec 28, 2014 7:18 pm
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 1 post ] 

Who is online

Users browsing this forum: No registered users and 37 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group.
Designed by X-Moon Productions.