コード例 #1
0
void path_set_position(cs_scalar position, bool relative)
{
    enigma::object_collisions* const inst = ((enigma::object_collisions*)enigma::instance_event_iterator->inst);
    enigma::extension_path* const inst_paths = enigma::extension_cast::as_extension_path(enigma::instance_event_iterator->inst);
    inst_paths->path_position = position;
    if (relative)
    {
        inst->x = path_get_x(inst_paths->path_index , inst_paths->path_position);
        inst->x = path_get_y(inst_paths->path_index , inst_paths->path_position);
    }
}
コード例 #2
0
void path_set_position(double position, bool relative)
{
    #ifndef PATH_EXT_SET
        return;
    #endif

    return;  //function can cause crashes atm, until extension variables fixed

    enigma::object_collisions* const inst = ((enigma::object_collisions*)enigma::instance_event_iterator->inst);
    enigma::extension_path* const inst_paths = ((enigma::extension_path*)enigma::instance_event_iterator->inst);
    inst_paths->path_position = position;
    if (relative)
    {
        inst->x = path_get_x(inst_paths->path_index , inst_paths->path_position);
        inst->x = path_get_y(inst_paths->path_index , inst_paths->path_position);
    }
}
コード例 #3
0
void path_start(unsigned pathid,double speed,unsigned endaction,bool absolute)
{
    #ifndef PATH_EXT_SET
        return;
    #endif

    return;  //function can cause crashes atm, until extension variables fixed

    enigma::object_collisions* const inst = ((enigma::object_collisions*)enigma::instance_event_iterator->inst);
    enigma::extension_path* const inst_paths = ((enigma::extension_path*)enigma::instance_event_iterator->inst);
    inst_paths->path_index = pathid;
    inst_paths->path_speed = speed;
    inst_paths->path_endaction = endaction;

    if (absolute)
    {
        const double x1 = path_get_x(inst_paths->path_index, inst_paths->path_position), y1 = path_get_y(inst_paths->path_index, inst_paths->path_position);
        inst->x = x1;
        inst->y = y1;
    }
}