описание скилов - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Игровой клиент

Игровой клиент Есть вопросы по поводу редактирования dat, utx и других файлов клиента, пожалуйста, задавайте их здесь.
Описание темы:Mp cost, range и тд.

Ответ
Опции темы
Непрочитано 11.02.2017, 13:12   #1
Аватар для TorBenLino
Пользователь

Автор темы (Топик Стартер) описание скилов

в скилл нейм.дат можно редактировать отображаемое пользователю описание и название скилов. Но когда наводишь на скилл, до его описания отдельно идут строчки типа "MP cost 10" или "Range 900", подскажите где изменять данные этих строчек, и могу ли я туда добавлять еще строчки (ну например с откатом, дмг, вообщем любую)

И сразу второй вопрос, когда я настакиваю гладовские зарядки, у меня в бафах появляется иконка отображающая текущий заряд, и это не иконка скилла, а какая-то другая. Где мне редактировать её описание, картинку и тд.

хелп плес)
интерлюд
TorBenLino вне форума Ответить с цитированием
Непрочитано 11.02.2017, 13:53   #2
Аватар для TorBenLino
Пользователь

Автор темы (Топик Стартер) Re: описание скилов

со вторым вопросом прояснения, оказывается это обычный скилл с id 4271, ток тогда непонятно где прописано что он должен вызываться когда я юзаю совершенно другой скилл
TorBenLino вне форума Ответить с цитированием
Непрочитано 11.02.2017, 16:08   #3
Аватар для Lorn
Пользователь

По умолчанию Re: описание скилов

Цитата:
Сообщение от TorBenLino Посмотреть сообщение
в скилл нейм.дат можно редактировать отображаемое пользователю описание и название скилов. Но когда наводишь на скилл, до его описания отдельно идут строчки типа "MP cost 10" или "Range 900", подскажите где изменять данные этих строчек,
Skillgrp.dat смотри
Lorn вне форума Ответить с цитированием
Непрочитано 11.02.2017, 17:22   #4
Аватар для TorBenLino
Пользователь

Автор темы (Топик Стартер) Re: описание скилов

Цитата:
Сообщение от Lorn Посмотреть сообщение
Skillgrp.dat смотри
да действительно, если мп кост, хп кост и рандж не равны нулю, то они будут отображаться в описании, а как мне добавить туда еще строчки?
чтобы они по тем же принципам работали
TorBenLino вне форума Ответить с цитированием
Непрочитано 11.02.2017, 18:41   #5
Аватар для Emperor
Пользователь

По умолчанию Re: описание скилов

TorBenLino, Дополнять ToolTip.uc, полагаю.
__________________
https://sites.google.com/site/l2clientdev/ - мой небольшой сборник.
Emperor вне форума Ответить с цитированием
Непрочитано 11.02.2017, 18:58   #6
Аватар для TorBenLino
Пользователь

Автор темы (Топик Стартер) Re: описание скилов

Цитата:
Сообщение от Emperor Посмотреть сообщение
TorBenLino, Дополнять ToolTip.uc, полагаю.
где находится tooltip нигде найти немогу,хз.
TorBenLino вне форума Ответить с цитированием
Непрочитано 11.02.2017, 19:15   #7
Аватар для Emperor
Пользователь

По умолчанию Re: описание скилов

TorBenLino, Класс в interface.u.
__________________
https://sites.google.com/site/l2clientdev/ - мой небольшой сборник.
Emperor вне форума Ответить с цитированием
Непрочитано 07.04.2017, 15:37   #8
Аватар для TorBenLino
Пользователь

Автор темы (Топик Стартер) Re: описание скилов

а где в xdat найти "mp cost" и "range" ?
TorBenLino вне форума Ответить с цитированием
Непрочитано 07.04.2017, 15:49   #9
Аватар для Emperor
Пользователь

По умолчанию Re: описание скилов

TorBenLino, Само понятие "Tooltip" выделяется на каждый типа отдельно (inventory, action, skill, shortcut и т.д.).


Выглядят они вот так:
function ReturnTooltip_NTT_ABNORMALSTATUS(string param, ETooltipSourceType eSourceType)
{
	local ItemInfo Item;
	local int ShowLevel;
	local int nTmp;
 
	local EItemParamType eItemParamType;
	local EShortCutItemType eShortCutType;
 
	if (eSourceType == NTST_ITEM)
	{
		ParseItemID( param, Item.ID );
		ParseString( param, "Name", Item.Name);
		ParseString( param, "AdditionalName", Item.AdditionalName);
		ParseString( param, "Description", Item.Description);
		ParseInt( param, "Level", Item.Level);
		ParseInt( param, "Reserved", Item.Reserved);
 
		eShortCutType = EShortCutItemType(Item.ItemSubType);
		eItemParamType = EItemParamType(Item.ItemType);
 
		m_Tooltip.MinimumWidth = TOOLTIP_MINIMUM_WIDTH;
 
		//아이템 이름
		StartItem();
		m_Info.eType = DIT_TEXT;
		m_Info.t_bDrawOneLine = true;
		m_Info.t_strText = Item.Name;
		EndItem();
 
		ShowLevel = Item.Level;
		if (Len(Item.AdditionalName)>0)
		{
			StartItem();
			m_Info.eType = DIT_TEXT;
			m_Info.nOffSetX = 5;
			m_Info.t_bDrawOneLine = true;
			m_Info.t_color.R = 255;
			m_Info.t_color.G = 217;
			m_Info.t_color.B = 105;
			m_Info.t_color.A = 255;
			m_Info.t_strText = Item.AdditionalName;
			EndItem();
 
			ShowLevel = class'UIDATA_SKILL'.static.GetEnchantSkillLevel( Item.ID, Item.Level );
		}
 
		//ex) " Lv "
		StartItem();
		m_Info.eType = DIT_TEXT;
		m_Info.t_bDrawOneLine = true;
		m_Info.t_strText = " ";
		EndItem();
 
		StartItem();
		m_Info.eType = DIT_TEXT;
		m_Info.t_bDrawOneLine = true;
		m_Info.t_color.R = 163;
		m_Info.t_color.G = 163;
		m_Info.t_color.B = 163;
		m_Info.t_color.A = 255;
		m_Info.t_ID = 88;
		EndItem();
 
 
		//스킬 레벨
		StartItem();
		m_Info.eType = DIT_TEXT;
		m_Info.t_bDrawOneLine = true;
		m_Info.t_color.R = 176;
		m_Info.t_color.G = 155;
		m_Info.t_color.B = 121;
		m_Info.t_color.A = 255;
		m_Info.t_strText = " " $ ShowLevel;
		EndItem();
 
 
		nTmp = class'UIDATA_SKILL'.static.GetHpConsume( Item.ID, Item.Level );
		if (nTmp>0)
		{
			AddTooltipItemOption(1195, String(nTmp), true, true, false);
		}
 
		//소모MP
		nTmp = class'UIDATA_SKILL'.static.GetMpConsume( Item.ID, Item.Level );
		if (nTmp>0)
		{
			AddTooltipItemOption(320, String(nTmp), true, true, false);
		}
 
		//유효거리
		nTmp = class'UIDATA_SKILL'.static.GetCastRange( Item.ID, Item.Level );
		if (nTmp>=0)
		{
			AddTooltipItemOption(321, String(nTmp), true, true, false);
		}
 
		//남은시간
		if (!IsDeBuff(Item.ID, Item.Level) && Item.Reserved>=0)
		{
			StartItem();
			m_Info.eType = DIT_TEXT;
			m_Info.nOffSetY = 6;
			m_Info.bLineBreak = true;
			m_Info.t_bDrawOneLine = true;
			m_Info.t_color.R = 163;
			m_Info.t_color.G = 163;
			m_Info.t_color.B = 163;
			m_Info.t_color.A = 255;
			m_Info.t_ID = 1199;
			EndItem();
 
			StartItem();
			m_Info.eType = DIT_TEXT;
			m_Info.nOffSetY = 6;
			m_Info.t_bDrawOneLine = true;
			m_Info.t_color.R = 163;
			m_Info.t_color.G = 163;
			m_Info.t_color.B = 163;
			m_Info.t_color.A = 255;
			m_Info.t_strText = " : ";
			EndItem();
 
			StartItem();
			m_Info.eType = DIT_TEXT;
			m_Info.nOffSetY = 6;
			m_Info.t_bDrawOneLine = true;
			m_Info.t_color.R = 176;
			m_Info.t_color.G = 155;
			m_Info.t_color.B = 121;
			m_Info.t_color.A = 255;
			m_Info.t_strText = MakeBuffTimeStr(Item.Reserved);
			ParamAdd(m_Info.Condition, "Type", "RemainTime");
			EndItem();
		}
 
		//설명
		if (Len(Item.Description)>0)
		{
			StartItem();
			m_Info.eType = DIT_TEXT;
			m_Info.nOffSetY = 6;
			m_Info.bLineBreak = true;
			m_Info.t_color.R = 178;
			m_Info.t_color.G = 190;
			m_Info.t_color.B = 207;
			m_Info.t_color.A = 255;
			m_Info.t_strText = Item.Description;
			EndItem();	
		}		
	}
	else
	{
		return;
	}
 
 
	ReturnTooltipInfo(m_Tooltip);
}
Code: C#
Где каждая секция - отдельная строка или разделитель. Добавить можно несколько значений, как например я сделал в абнормалстатусе забавы ради (добавил МПкост и рейндж баффа):

(Да-да, если на то пошло, мпкост лучше пихать рядом с lvl'ом, но я забыл, а теперь лень).

В *.xdat существует только пустое окно, ради работоспособности класса. Вся логика тултипов в interface.u.
__________________
https://sites.google.com/site/l2clientdev/ - мой небольшой сборник.
Emperor вне форума Ответить с цитированием
Непрочитано 07.04.2017, 19:48   #10
Аватар для Kassidy
Пользователь

По умолчанию Re: описание скилов

Ребят кто знает как достучаться до функций которые парсят skillgrp.dat?
Как я понял определения лежат в:

//================================================== ==============================
// UIDATA_SKILL.
//================================================== ==============================

class UIDATA_SKILL extends UIDataManager
Native;

static function int GetFirstID () {}

static function int GetNextID () {}

static function int GetDataCount () {}

static function string GetIconName (int ClassID, int Level) {}

static function string GetName (int ClassID, int Level) {}

static function string GetDescription (int ClassID, int Level) {}

static function string GetEnchantName (int ClassID, int Level) {}

static function int GetEnchantSkillLevel (int ClassID, int Level) {}

static function string GetOperateType (int ClassID, int Level) {}

static function int GetHpConsume (int ClassID, int Level) {}

static function int GetMpConsume (int ClassID, int Level) {}

static function int GetCastRange (int ClassID, int Level) {}
Kassidy вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Описание предмета fq1 Игровой клиент 0 20.10.2016 21:38
Описание Таблиц BadStealth Lineage II 2 05.05.2014 18:34
Имя и описание portotiv Курилка / Yak floor 15 04.04.2013 18:55
Описание услуг iiprinyk Рынок / Marketplace 15 09.01.2012 13:21
Описание скилов Kamael PROGRAMMATOR Lineage II 9 19.07.2008 13:29


© 2007–2019 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 09:13. Часовой пояс GMT +3.

Вверх