Esempio n. 1
0
static void set_local_ptr_value (entity *en, ptr_types type, void *ptr)
{
	pylon
		*raw;

	#if DEBUG_MODULE

	debug_log_entity_args (ENTITY_DEBUG_LOCAL, ENTITY_DEBUG_PTR_VALUE, en, type, ptr);

	#endif

	raw = (pylon *) get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_SUCC:
		////////////////////////////////////////
		{
			raw->succ = (entity *) ptr;

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}
}
Esempio n. 2
0
static void set_local_ptr_value (entity *en, ptr_types type, void *ptr)
{
    vehicle
    *raw;

#if DEBUG_MODULE

    debug_log_entity_args (ENTITY_DEBUG_LOCAL, ENTITY_DEBUG_PTR_VALUE, en, type, ptr);

#endif

    raw = get_local_entity_data (en);

    switch (type)
    {
    ////////////////////////////////////////
    case PTR_TYPE_SOUND_EFFECT_DATA:
        ////////////////////////////////////////
    {
        raw->sound_effect_data = ptr;

        break;
    }
    ////////////////////////////////////////
    default:
        ////////////////////////////////////////
    {
        debug_fatal_invalid_ptr_type (en, type);

        break;
    }
    }
}
Esempio n. 3
0
static void *get_local_ptr_value (entity *en, ptr_types type)
{
	pylon
		*raw;

	void
		*ptr;

	raw = (pylon *) get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_SUCC:
		////////////////////////////////////////
		{
			ptr = raw->succ;

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}

	return (ptr);
}
Esempio n. 4
0
static void *get_local_ptr_value (entity *en, ptr_types type)
{
	waypoint
		*raw;

	void
		*ptr;

	raw = get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_POSITION_ENTITY:
		////////////////////////////////////////
		{
			debug_fatal ("WP_PTR: REMOVE");
			ptr = raw->position_entity;

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}

	return (ptr);
}
Esempio n. 5
0
static void *get_local_ptr_value (entity *en, ptr_types type)
{
	group
		*raw;

	void
		*ptr;

	raw = (group *) get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_GROUP_LEADER:
		////////////////////////////////////////
		{
			ptr = get_local_entity_first_child (en, LIST_TYPE_MEMBER);

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}

	return (ptr);
}
Esempio n. 6
0
static void *get_local_ptr_value (entity *en, ptr_types type)
{
    vehicle
    *raw;

    void
    *ptr;

    raw = get_local_entity_data (en);

    switch (type)
    {
    ////////////////////////////////////////
    case PTR_TYPE_INSTANCE_3D_OBJECT:
        ////////////////////////////////////////
    {
        ptr = raw->inst3d;

        break;
    }
    ////////////////////////////////////////
    case PTR_TYPE_SOUND_EFFECT_DATA:
        ////////////////////////////////////////
    {
        ptr = raw->sound_effect_data;

        break;
    }
    ////////////////////////////////////////
    case PTR_TYPE_TERRAIN_FACE_NORMAL:
        ////////////////////////////////////////
    {
        ptr = get_3d_terrain_point_data_normal (&raw->terrain_info);

        break;
    }
    ////////////////////////////////////////
    case PTR_TYPE_WEAPON_PACKAGE_STATUS_ARRAY:
        ////////////////////////////////////////
    {
        ptr = raw->weapon_package_status_array;

        break;
    }
    ////////////////////////////////////////
    default:
        ////////////////////////////////////////
    {
        debug_fatal_invalid_ptr_type (en, type);

        break;
    }
    }

    return (ptr);
}
Esempio n. 7
0
static void set_local_ptr_value (entity *en, ptr_types type, void *ptr)
{
	group
		*raw;

	#if DEBUG_MODULE

	debug_log_entity_args (ENTITY_DEBUG_LOCAL, ENTITY_DEBUG_PTR_VALUE, en, type, ptr);

	#endif

	raw = (group *) get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_GROUP_LEADER:
		////////////////////////////////////////
		{
			entity
				*member;
				
			//
			// make an entity group leader by removing it from the member list, and inserting it at the front
			//

			member = (entity *) ptr;

			ASSERT (member);

			ASSERT (get_local_entity_parent (member, LIST_TYPE_MEMBER) == en);
	
			delete_local_entity_from_parents_child_list (member, LIST_TYPE_MEMBER);

			insert_local_entity_into_parents_child_list (member, LIST_TYPE_MEMBER, en, NULL);

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}
}
Esempio n. 8
0
static void set_local_ptr_value (entity *en, ptr_types type, void *ptr)
{
	waypoint
		*raw;

	#if DEBUG_MODULE

	debug_log_entity_args (ENTITY_DEBUG_LOCAL, ENTITY_DEBUG_PTR_VALUE, en, type, ptr);

	#endif

	raw = get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_POSITION_ENTITY:
		////////////////////////////////////////
		{
			if (ptr)
			{
				debug_fatal ("WP_PTR: REMOVE");
			}
			raw->position_entity = ptr;

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}
}
Esempio n. 9
0
static void set_local_ptr_value (entity *en, ptr_types type, void *ptr)
{
	task
		*raw;

	#if DEBUG_MODULE

	debug_log_entity_args (ENTITY_DEBUG_LOCAL, ENTITY_DEBUG_PTR_VALUE, en, type, ptr);

	#endif

	raw = (task *) get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_RETURN_KEYSITE:
		////////////////////////////////////////
		{
			raw->return_keysite = (entity *) ptr;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_DEPENDENTS:
		////////////////////////////////////////
		{
			raw->route_dependents = (entity **) ptr;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_FORMATION_TYPES:
		////////////////////////////////////////
		{
			raw->route_formation_types = (formation_types *) ptr;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_NODE:
		////////////////////////////////////////
		{
			raw->route_nodes = (vec3d *) ptr;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_WAYPOINT_TYPES:
		////////////////////////////////////////
		{
			raw->route_waypoint_types = (entity_sub_types *) ptr;

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}
}
Esempio n. 10
0
static void *get_local_ptr_value (entity *en, ptr_types type)
{
	task
		*raw;

	void
		*ptr;

	raw = (task *) get_local_entity_data (en);

	switch (type)
	{
		////////////////////////////////////////
		case PTR_TYPE_RETURN_KEYSITE:
		////////////////////////////////////////
		{
			ptr = raw->return_keysite;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_DEPENDENTS:
		////////////////////////////////////////
		{
			ptr = raw->route_dependents;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_FORMATION_TYPES:
		////////////////////////////////////////
		{
			ptr = raw->route_formation_types;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_NODE:
		////////////////////////////////////////
		{
			ptr = raw->route_nodes;

			break;
		}
		////////////////////////////////////////
		case PTR_TYPE_ROUTE_WAYPOINT_TYPES:
		////////////////////////////////////////
		{
			ptr = raw->route_waypoint_types;

			break;
		}
		////////////////////////////////////////
		default:
		////////////////////////////////////////
		{
			debug_fatal_invalid_ptr_type (en, type);

			break;
		}
	}

	return (ptr);
}