Esempio n. 1
0
/**
 * Request to save guild storage
 * @param account_id : account requesting the save
 * @param guild_id : guild to take the guild_storage
 * @param flag : 1 = Char quitting, close the storage
 * @return False : fail (no storage), True : success (requested)
 */
bool gstorage_storagesave(uint32 account_id, int guild_id, int flag)
{
	struct guild_storage *stor = gstorage_get_storage(guild_id);

	if (stor) {
		if (flag) //Char quitting, close it
			stor->opened  = 0;
	 	if (stor->dirty)
			intif_send_guild_storage(account_id, stor);
		return true;
	}
	return false;
}
Esempio n. 2
0
/*==========================================
* Request to save guild storage
* return
* 	0 : fail (no storage)
* 	1 : succes
 *------------------------------------------*/
int storage_guild_storagesave(int account_id, int guild_id, int flag)
{
	struct guild_storage *stor = guild2storage2(guild_id);

	if(stor)
	{
		if (flag) //Char quitting, close it.
			stor->storage_status = 0;
	 	if (stor->dirty)
			intif_send_guild_storage(account_id,stor);
		return 1;
	}
	return 0;
}
Esempio n. 3
0
/*==========================================
 * ギルド倉庫の保存
 *------------------------------------------
 */
void storage_guild_storagesave(struct map_session_data *sd)
{
	struct guild_storage *stor;

	nullpo_retv(sd);

	stor = (struct guild_storage *)numdb_search(guild_storage_db,sd->status.guild_id);
	if(stor && stor->dirty) {
		intif_send_guild_storage(sd->status.account_id,stor);
		stor->dirty = 0;
	}

	return;
}
Esempio n. 4
0
/**
 * Request to save guild storage
 * @param account_id : account requesting the save
 * @param guild_id : guild to take the guild_storage
 * @param flag : 1=char quitting, close the storage
 * @return False : fail (no storage), True : success (requested)
 */
bool storage_guild_storagesave(uint32 account_id, int guild_id, int flag)
{
	struct s_storage *stor = guild2storage2(guild_id);

	if (stor) {
		if (flag) //Char quitting, close it.
			stor->status = false;

		if (stor->dirty)
			intif_send_guild_storage(account_id,stor);

		return true;
	}

	return false;
}
Esempio n. 5
0
/*==========================================
 * ギルド倉庫を閉じて保存
 *------------------------------------------
 */
void storage_guild_storageclose(struct map_session_data *sd)
{
	struct guild_storage *stor;

	nullpo_retv(sd);
	nullpo_retv(stor = (struct guild_storage *)numdb_search(guild_storage_db,sd->status.guild_id));

	if(stor->dirty) {
		storage_sortitem(stor->store_item, MAX_GUILD_STORAGE, &stor->sortkey, battle_config.guild_storage_sort);
		intif_send_guild_storage(sd->status.account_id,stor);
		if(battle_config.save_player_when_storage_closed) {
			chrif_save(sd,0);
		}
		stor->dirty = 0;
	}
	stor->storage_status   = 0;
	sd->state.storage_flag = 0;
	clif_storageclose(sd);
	intif_unlock_guild_storage(sd->status.guild_id);

	return;
}