Dzień dobry!
Mam pewien problem. Mianowicie klasa u mnie nie działa tak, jak powinna działać. Jeśli przypiszę klasę do jakiejś zmiennej, to cały czas operuję przez zmienną na klasie, tak jakby była tablicą.
Dziękuję uprzejmie z góry za pomoc
Mam pewien problem. Mianowicie klasa u mnie nie działa tak, jak powinna działać. Jeśli przypiszę klasę do jakiejś zmiennej, to cały czas operuję przez zmienną na klasie, tak jakby była tablicą.
Dziękuję uprzejmie z góry za pomoc

Code:
local fst;
local sec;
local thr;
class window
{
config = {
x = 0,
y = 0,
width = 0,
height = 0,
texture_name = "",
enabled = false
};
objects = {
texture = null,
count = 0
};
dotestu = 0;
constructor(x,y,width,height,texture_name)
{
dotestu++;
config.x = x;
config.y = y;
config.width = width;
config.height = height;
config.texture_name = texture_name;
objects.texture = Texture(x,y,width,height,texture_name);
}
function createText(text, x, y)
{
objects.count++;
objects[objects.count] <- {};
objects[objects.count].draw <- Draw(x + config.x, y + config.y,text);
objects[objects.count].draw.setColor(255,255,255);
objects[objects.count].draw.font = "FONT_OLD_10_WHITE_HI.TGA";
}
function test()
{
Chat.print(255,0,0,dotestu);
}
function show()
{
config.enabled = true;
objects.texture.visible = true;
if (objects.count > 0) {
for (local i = 1; i <= objects.count; ++i) {
objects[i].draw.visible = true;
}
}
}
function hide()
{
config.enabled = false;
objects.texture.visible = false;
if (objects.count > 0) {
for (local i = 1; i <= objects.count; ++i) {
objects[i].draw.visible = false;
}
}
}
}
function onInit()
{
fst = window(0,0,5000,2000,"DLG_CONVERSATION.TGA");
fst.createText("ABCD", 100, 100);
fst.createText("BCDE", 100, 300);
fst.createText("CDEF", 100, 500);
fst.createText("DEFG", 100, 700);
fst.test();
sec = window(0,3000,5000,2000,"DLG_CONVERSATION.TGA");
sec.createText("EFGH", 100, 100);
sec.createText("FGHI", 100, 300);
sec.test();
thr = window(0,6000,5000,2000,"DLG_CONVERSATION.TGA");
thr.createText("GHIJ", 100, 100);
thr.createText("HIJK", 100, 300);
thr.createText("XXXX", 100, 500);
thr.test();
fst.show();
sec.show();
thr.show();
for (local i = 1; i <= thr.objects.count; ++i) {
Chat.print(255,0,0,thr.objects[i].draw.text);
}
}
addEventHandler("onInit", onInit);