我试图了解这段代码是如何工作的:
在 .cs 文件中,这些行首先出现:
addTooltipTemplate("tooltipInventory", 666, "createAlchemyTooltip");
addTooltipTemplate("tooltipInventory", 669, "createAlchemyTooltip");
addTooltipTemplate("tooltipInventory", 529, "createAlchemyTooltip");
紧随其后的是:
function createAlchemyTooltip(%informer)
{
echo("createAlchemyTooltip");
createBaseTooltip();
createObjectsTypesName(%informer);
createItemsQQW(%informer);
%pnl = createVerticalStackControl();
%pnl.padding = 0;
TooltipMainControl.add(%pnl);
%textCtrl = createTextCtrl("GuiGrayTextTooltipProfile");
%textCtrl.setText(GetMessageIDText(2561) @ ":");
%pnl.add(%textCtrl);
%index = 0;
for(%index = 0; %index < 3; %index++)
{
%effect = %informer.getDataByIndex("objects_types", "Effect", %index);
if (%effect !$= "")
{
%positive = %informer.getDataByIndex("objects_types", "EffectPositive", %index);
createEffectCtrl(%pnl, %effect, 0, %positive);
}
}
addItemDescription(%informer);
}
在数据库中,有一个名为“AlchemyHash”的列,其中包含如下所示的数据
0x2A1503003D2522143A092D172E0D0E071224100B37192F0A29231E31111B0205280C2C163F32404133062B20361D0F1C38013E353B3404083C27211830391A26131F090500040B060201030A08070B040A060501030700020908
以某种方式将其转换为上面的代码,以决定 66 种草药中的哪一种获得特定的工具提示。
谁能想到如何做到这一点?