Тема: CSWOWD (форк)
Показать сообщение отдельно
Старый 03.02.2012, 21:31   #345
lovepsone
Ученый
 
Регистрация: 07.03.2010
Адрес: Беларусь,Брест
Сообщений: 188
Сказал(а) спасибо: 131
Поблагодарили 34 раз(а) в 27 сообщениях
lovepsone Хрен знает что...lovepsone Хрен знает что...
По умолчанию

Вот кое-что я дописал в cswowd. В общем добавил функцию, которая заменяет "пустые окна" (в просмотре персонажа если нет шмотки, то показывает пустое окно) на иконки (такие как в игре ). Патчем не могу выложить, так что ручками если надо добавляйте:
Добавляем саму функцию в function.php
Код:
	function empty_show_item_from_char($style='item', $posx=0, $posy=0, $empty_item="")
		{
 			switch ($empty_item): 
				case ("head"):  	$icon = IMAGES_PI."empty_icon/head.png";   	break;
				case ("neck"):  	$icon = IMAGES_PI."empty_icon/neck.png";   	break;
				case ("shoulder"):  	$icon = IMAGES_PI."empty_icon/shoulder.png";   	break;
				case ("back"):  	$icon = IMAGES_PI."empty_icon/back.png";   	break;
				case ("chest"):  	$icon = IMAGES_PI."empty_icon/chest.png";   	break;
				case ("shirt"):  	$icon = IMAGES_PI."empty_icon/shirt.png";   	break;
				case ("tabard"):  	$icon = IMAGES_PI."empty_icon/tabard.png";   	break;
				case ("wrist"):  	$icon = IMAGES_PI."empty_icon/wrist.png";   	break;
				case ("gloves"):  	$icon = IMAGES_PI."empty_icon/gloves.png";   	break;
				case ("belt"):  	$icon = IMAGES_PI."empty_icon/belt.png";   	break;
				case ("legs"):  	$icon = IMAGES_PI."empty_icon/legs.png";   	break;
				case ("feet"):  	$icon = IMAGES_PI."empty_icon/feet.png";   	break;
				case ("finger"):  	$icon = IMAGES_PI."empty_icon/finger.png";   	break;
				case ("trinket"):  	$icon = IMAGES_PI."empty_icon/trinket.png";   	break;
				case ("main"):  	$icon = IMAGES_PI."empty_icon/main.png";   	break;
				case ("off"):  		$icon = IMAGES_PI."empty_icon/off.png";   	break;
				case ("ranged"):  	$icon = IMAGES_PI."empty_icon/ranged.png";   	break;
			endswitch;

			if ($posx OR $posy) { $position.= 'style="position: absolute; left: '.$posx.'px; top: '.$posy.'px; border: 0px;"'; }
			if (empty($position)) { $position = "style=\"position: relative; left: 0px;top: 0px; border: 0px;float: left;\""; }
			echo"\n<div class=$style $position><img class='".$style."' src='".$icon."'></div>";
		}
IMAGES_PI - константа которая указывает путь к иконкам.
Далее подпиливаем функцию show_item_from_char, добавляем ей поле и ставим условие:
Код:
function show_item_from_char($id, $guid, $style='item', $posx=0, $posy=0, $empty_item)
{
	global $cDB;
	if ($id != 0)
	{
		$item_data = $cDB->selectCell("SELECT `guid` FROM `item_instance` WHERE `owner_guid`=?d AND (SUBSTRING_INDEX( SUBSTRING_INDEX(`data` , ' ' , 9) , ' ' , -1 )+0)=?d AND (SUBSTRING_INDEX( SUBSTRING_INDEX(`data` , ' ' , 4) , ' ' , -1 )+0)=$id", $guid, $guid, $id);
		if ($item_data = getItemData($item_data))
			show_item_by_data($item_data, $style, $posx, $posy);
	}
	else { empty_show_item_from_char($style, $posx, $posy, $empty_item); }
}
ну и далее в module/armory/show_char_equip.php
в место
Код:
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_HEAD],$guid,$imgsize,22,73);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_NECK],$guid,$imgsize,22,114);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_SHOULDER],$guid,$imgsize,22,155);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_BACK],$guid,$imgsize,22,196);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_CHEST],$guid,$imgsize,22,237);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_SHIRT],$guid,$imgsize,22,278);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_TABARD],$guid,$imgsize,22,319);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_WRIST],$guid,$imgsize,22,360);

 show_item_from_char($char_data[PLAYER_SLOT_ITEM_GLOVES],$guid,$imgsize,306,73);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_BELT],$guid,$imgsize,306,114);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_LEGS],$guid,$imgsize,306,155);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_FEET],$guid,$imgsize,306,196);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_FINGER1],$guid,$imgsize,306,237);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_FINGER2],$guid,$imgsize,306,278);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_TRINKET1],$guid,$imgsize,306,319);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_TRINKET2],$guid,$imgsize,306,360);

 show_item_from_char($char_data[PLAYER_SLOT_ITEM_MAIN_HAND],$guid,$imgsize,122,384);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_OFF_HAND],$guid,$imgsize,164,384);
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_RANGED],$guid,$imgsize,206,384);
добавляем
Код:
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_HEAD],$guid,$imgsize,22,73,"head");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_NECK],$guid,$imgsize,22,114,"neck");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_SHOULDER],$guid,$imgsize,22,155,"shoulder");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_BACK],$guid,$imgsize,22,196,"back");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_CHEST],$guid,$imgsize,22,237,"chest");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_SHIRT],$guid,$imgsize,22,278,"shirt");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_TABARD],$guid,$imgsize,22,319,"tabard");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_WRIST],$guid,$imgsize,22,360,"wrist");

 show_item_from_char($char_data[PLAYER_SLOT_ITEM_GLOVES],$guid,$imgsize,306,73,"gloves");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_BELT],$guid,$imgsize,306,114,"belt");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_LEGS],$guid,$imgsize,306,155,"legs");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_FEET],$guid,$imgsize,306,196,"feet");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_FINGER1],$guid,$imgsize,306,237,"finger");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_FINGER2],$guid,$imgsize,306,278,"finger");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_TRINKET1],$guid,$imgsize,306,319,"trinket");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_TRINKET2],$guid,$imgsize,306,360,"trinket");

 show_item_from_char($char_data[PLAYER_SLOT_ITEM_MAIN_HAND],$guid,$imgsize,122,384,"main");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_OFF_HAND],$guid,$imgsize,164,384,"off");
 show_item_from_char($char_data[PLAYER_SLOT_ITEM_RANGED],$guid,$imgsize,206,384,"ranged");
Думаю все понятно написал, ну и то что обазначено красным цветом не забыли перенести в свой проект(если конечно оно вам нужно)!
ну и сами иконки же конечно
Вложения
Тип файла: zip empty_icon.zip (160.1 Кб, 396 просмотров)
__________________
sql-language.ru

Последний раз редактировалось lovepsone; 04.02.2012 в 11:24.
lovepsone вне форума   Ответить с цитированием