LUADOC - Farming Simulator 19

Script v1.7.1.0

Engine v1.7.1.0

Foundation Reference

InGameIcon

Functions

delete

Description
Definition
delete()
Code
38function InGameIcon:delete()
39 self.iconOverlay:delete();
40end

draw

Description
Definition
draw()
Code
116function InGameIcon:draw()
117 if self.visible then
118 self.iconOverlay:setColor(1, 1, 1, self.alpha);
119 self.iconOverlay:render();
120
121 setTextBold(true);
122 setTextAlignment(RenderText.ALIGN_CENTER);
123 setTextColor(0, 0, 0, self.alpha);
124 renderText(self.textPosX, self.textPosY - 0.003, 0.025, self.text);
125 setTextColor(1.0, 1.0, 1.0, self.alpha);
126 renderText(self.textPosX, self.textPosY, 0.025, self.text);
127 setTextAlignment(RenderText.ALIGN_LEFT);
128 setTextBold(false);
129 setTextColor(1,1,1,1);
130 end;
131end

hideIcon

Description
Definition
hideIcon()
Code
100function InGameIcon:hideIcon()
101 self.time = self.fadeTime + self.visibleTime;
102end

mouseEvent

Description
Definition
mouseEvent()
Code
58function InGameIcon:mouseEvent(posX, posY, isDown, isUp, button)
59 if self.visible and isDown and button == 1 then
60 if self.time <= self.fadeTime + self.visibleTime then
61 self:hideIcon();
62 end;
63 end;
64end

new

Description
Definition
new()
Code
12function InGameIcon:new()
13 local instance = {};
14 setmetatable(instance, InGameIcon_mt);
15
16 instance.width, instance.height = getNormalizedScreenValues(50, 50)
17 instance.posX, instance.posY = getNormalizedScreenValues(25, 360)
18
19 instance.textPosX = instance.posX + instance.width * (3/5);
20 instance.textPosY = instance.posY + 0.005;
21
22 instance.fadeTime = 1000;
23 instance.visibleTime = 2000;
24 instance.visible = false;
25 instance.time = 0;
26
27 instance.alpha = 0;
28 instance.fileName = "dataS2/menu/hud/goldNugget.png";
29 instance.text = "+1";
30
31 instance.iconOverlay = Overlay:new(instance.fileName, instance.posX, instance.posY, instance.width, instance.height);
32
33 return instance;
34end

setIcon

Description
Definition
setIcon()
Code
44function InGameIcon:setIcon(fileName)
45 self.iconOverlay:delete();
46 self.fileName = fileName;
47 self.iconOverlay = Overlay:new(self.fileName, self.posX, self.posY, self.width, self.height);
48end

setPosition

Description
Definition
setPosition()
Code
106function InGameIcon:setPosition(x, y)
107 self.iconOverlay:setPosition(x, y)
108 self.posX = Utils.getNoNil(x, self.posX)
109 self.posY = Utils.getNoNil(y, self.posY)
110 self.textPosX = self.posX + self.width * (3/5);
111 self.textPosY = self.posY + 0.005;
112end

setText

Description
Definition
setText()
Code
52function InGameIcon:setText(text)
53 self.text = text;
54end

showIcon

Description
Definition
showIcon()
Code
91function InGameIcon:showIcon(duration)
92 self.visibleTime = duration;
93 self.time = 0;
94 self.alpha = 0;
95 self.visible = true;
96end

update

Description
Definition
update()
Code
68function InGameIcon:update(dt)
69 if self.visible then
70 self.time = self.time + dt;
71
72 -- fade in
73 self.alpha = math.min(1.0, self.time / self.fadeTime);
74
75 -- fade out
76 if self.time > self.fadeTime + self.visibleTime then
77 self.alpha = math.max(0.0, (self.fadeTime - (self.time - self.fadeTime - self.visibleTime)) / self.fadeTime);
78 end;
79
80 -- disable
81 if self.time > self.fadeTime * 2 + self.visibleTime then
82 self.time = 0;
83 self.visible = false;
84 end;
85
86 end;
87end