Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
описание скилов
#1
в скилл нейм.дат можно редактировать отображаемое пользователю описание и название скилов. Но когда наводишь на скилл, до его описания отдельно идут строчки типа "MP cost 10" или "Range 900", подскажите где изменять данные этих строчек, и могу ли я туда добавлять еще строчки (ну например с откатом, дмг, вообщем любую)

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

хелп плес)
интерлюд
Ответ
#2
со вторым вопросом прояснения, оказывается это обычный скилл с id 4271, ток тогда непонятно где прописано что он должен вызываться когда я юзаю совершенно другой скилл
Ответ
#3
TorBenLino Написал:в скилл нейм.дат можно редактировать отображаемое пользователю описание и название скилов. Но когда наводишь на скилл, до его описания отдельно идут строчки типа "MP cost 10" или "Range 900", подскажите где изменять данные этих строчек,

Skillgrp.dat смотри
Ответ
#4
Lorn Написал:Skillgrp.dat смотри

да действительно, если мп кост, хп кост и рандж не равны нулю, то они будут отображаться в описании, а как мне добавить туда еще строчки?
чтобы они по тем же принципам работали
Ответ
#5
TorBenLino, Дополнять ToolTip.uc, полагаю.
Ответ
#6
Emperor Написал:TorBenLino, Дополнять ToolTip.uc, полагаю.

где находится tooltip нигде найти немогу,хз.
Ответ
#7
TorBenLino, Класс в interface.u.
Ответ
#8
а где в xdat найти "mp cost" и "range" ?
Ответ
#9
TorBenLino, Само понятие "Tooltip" выделяется на каждый типа отдельно (inventory, action, skill, shortcut и т.д.).


Выглядят они вот так:
[SRC="csharp"]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);
}[/SRC]

Где каждая секция - отдельная строка или разделитель. Добавить можно несколько значений, как например я сделал в абнормалстатусе забавы ради (добавил МПкост и рейндж баффа):
[Изображение: screenshot_2162.png]
(Да-да, если на то пошло, мпкост лучше пихать рядом с lvl'ом, но я забыл, а теперь лень).

В *.xdat существует только пустое окно, ради работоспособности класса. Вся логика тултипов в interface.u.
Ответ
#10
Ребят кто знает как достучаться до функций которые парсят 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) {}
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Проблема с окном скилов сертификации TFH 1 1,693 01-25-2022, 09:05 PM
Последний пост: Bunna
  Описание к картинке Kassidy 9 2,529 05-11-2017, 07:48 AM
Последний пост: Kassidy
  Описание предмета fq1 0 1,036 10-20-2016, 09:38 PM
Последний пост: fq1
  4-я панель для скилов obs 18 9,638 01-17-2016, 02:28 AM
Последний пост: Zubastic
  Откат скилов в секундах obs 3 2,302 05-04-2015, 10:20 AM
Последний пост: Donatte
  Анимация скилов flopix 6 2,128 12-07-2014, 03:15 PM
Последний пост: flopix
  Анимация скилов Gracia Epilogue linliss 7 3,279 10-28-2012, 06:31 PM
Последний пост: Zubastic
  Где находятся анимации скилов? finfan 3 5,703 02-07-2012, 09:30 PM
Последний пост: Azagthtot
  Ищу настроищика скилов danil110794 0 1,267 10-22-2011, 12:43 PM
Последний пост: danil110794
  Отображение проходимости скилов на экране malder 11 14,941 09-18-2011, 04:28 PM
Последний пост: malder

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)