Пример #1
0
message_node *GetMessageByName(int class_id,char *message_name,class_node **found_class)
{
   int message_id;

   message_id = GetIDByName(message_name);
   if (message_id == INVALID_ID)
   {
      eprintf("GetMessageByName can't find name %s\n",message_name);
      return NULL;
   }
   return GetMessageByID(class_id,message_id,found_class);
}
Пример #2
0
int GetDataNum(int tag_val,const char *data_str)
{
   resource_node *r;
   class_node *c;
   int retval;

   switch (tag_val)
   {
   case TAG_RESOURCE :
      r = GetResourceByName(data_str);
      if (r != NULL)
      {
         retval = r->resource_id;
         break;
      }

      if (sscanf(data_str,"%i",&retval) != 1)
         retval = INVALID_DATA;

      break;

   case TAG_CLASS :
      c = GetClassByName(data_str);
      if (c != NULL)
      {
         retval = c->class_id;
         break;
      }

      if (sscanf(data_str,"%i",&retval) != 1)
         retval = INVALID_DATA;

      break;

   case TAG_MESSAGE :
      retval = GetIDByName(data_str);
      if (retval == INVALID_ID)
         retval = INVALID_DATA;
      break;

   case TAG_TEMP_STRING :
      eprintf( "Recognized TAG_TEMP_STRING type, attempting to load..." );
      retval = INVALID_DATA;
      break;

   default :
      if (sscanf(data_str,"%i",&retval) != 1)
         retval = INVALID_DATA;
   }

   return retval;
}