Jump to content

[C++] Get attr, Set attr


Dragonslayer

Mensajes recomendados

Archivo: questlua_item.cpp

 

Antes de meter esto, quiero que sepais que item.set_value = item.set_attr.

	int item_get_attr(lua_State* L)
	 {
	  LPITEM item = CQuestManager::instance().GetCurrentItem();
	 
	  if(!lua_isnumber(L,1) || !item)
	  {
	   return 0;
	  }
	 
	  int bonus = lua_tonumber(L,1);
	 
	  if(bonus < 0 || bonus > 6)
	  {
	   return 0;
	  }
	 
	  TPlayerItemAttribute attr = item->GetAttribute(bonus);
	  lua_pushnumber(L,attr.bType);
	  lua_pushnumber(L,attr.sValue);
	  return 2;
	 }
	 
	int item_set_attr(lua_State* L)
	 {
	  LPITEM item = CQuestManager::instance().GetCurrentItem();
	  
	  if (!lua_isnumber(L,1)||!lua_isnumber(L,2)||!lua_isnumber(L,3)||!item)
	  {
	   lua_pushnumber(L,0);
	   return 1;
	  }
	  
	  int bonus = lua_tonumber(L,1);
	  if (bonus <0 || bonus > 6)
	  {
	   lua_pushnumber(L,0);
	   return 1;
	  }
	  
	  item->SetForceAttribute(bonus,lua_tonumber(L,2),lua_tonumber(L,3));
	  lua_pushnumber(L,1);
	  return 1;
	}
			{ "get_attr",		 item_get_attr },
			{ "set_attr",		 item_set_attr },
Enlace para comentar
Compartir en otros sitios

Unirse a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, regístrate para publicar con su cuenta.

Guest
Responder a este tema...

×   Has pegado contenido con formato .   Eliminar formato

  Only 75 emoji are allowed.

×   Tu enlace se ha incorporado automáticamente.   Mostrar un enlace en su lugar

×   Se ha restaurado el contenido anterior. .   Borrar editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recientemente navegando por este tema   0 miembros

    • No hay usuarios registrados visitando esta página.
×
×
  • Crear nuevo...