• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

okno

Status
Not open for further replies.

Reaper7

dunno wat 2 rite here
Joined
Feb 18, 2011
Messages
133
Reaction score
1
Siema, zapodałby mi ktoś funkcje która otwiera okienko, tz. np. takie jak jest podczas wylogowania się (yes/no)? No i prosiłbym też o z grubsza wytłumaczenie jak ona działa. thx.

no i żeby nie robić nowego tematu. napisałem sobie taki tam skrypcik aby coś przetestować:
Code:
function onUse(cid, 2145, fromPosition, itemEx, toPosition)
local diament = 2145

  if item.itemid == diament then 
  math.random(doPlayerRemoveItem(cid, diament), doPlayerAddItem(uid, 2160))
  end
 end
No i wywala mi błąd w konsoli, że nie może załadować skryptu. Zgaduje, że coś z math.random ale nigdy nie ogarniałem tej funkcji i już kiedyś tu na forum o niej pisałem w sumie, ale na dzień dzisiejszy jestem bardziej ogarnięty i powinienem zrozumieć ;d. pozdrawiam.
 
Last edited:
A w sumie huj będę dobry wujek.

Zobacz jak działa windows.lua , wyciągnij wnioski.

Lua:
local WINDOWS = {
	[5303] = 6448, [5304] = 6449,
	[6438] = 6436, [6436] = 6438,
	[6439] = 6437, [6437] = 6439,
	[6442] = 6440, [6440] = 6442,
	[6443] = 6441, [6441] = 6443,
	[6446] = 6444, [6444] = 6446,
	[6447] = 6445, [6445] = 6447,
	[6448] = 5303, [6449] = 5304,
	[6452] = 6450, [6450] = 6452,
	[6453] = 6451, [6451] = 6453,
	[6456] = 6454, [6454] = 6456,
	[6457] = 6455, [6455] = 6457,
	[6460] = 6458, [6458] = 6460,
	[6461] = 6459, [6459] = 6461,
	[6464] = 6462, [6462] = 6464,
	[6465] = 6463, [6463] = 6465,
	[6468] = 6466, [6466] = 6468,
	[6469] = 6467, [6467] = 6469,
	[6472] = 6470, [6470] = 6472,
	[6473] = 6471, [6471] = 6473,
	[6790] = 6788, [6788] = 6790,
	[6791] = 6789, [6789] = 6791,
	[7027] = 7025, [7025] = 7027,
	[7028] = 7026, [7026] = 7028,
	[7031] = 7029, [7029] = 7031,
	[7032] = 7030, [7030] = 7032,
	[10264] = 10266, [10266] = 10264,
	[10265] = 10267, [10267] = 10265,
	[10488] = 10490, [10490] = 10488,
	[10489] = 10491, [10491] = 10489
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local window = WINDOWS[item.itemid]
	if(not window) then
		return false
	end

	local house, position = getHouseFromPos(fromPosition), fromPosition
	if(not house) then
		position.y = position.y - 1
		house = getHouseFromPos(position)
		if(not house) then
			position.y = position.y + 1
			position.x = position.x - 1
			house = getHouseFromPos(position)
		end
	end

	if(house and getHouseFromPos(getThingPosition(cid)) ~= house and not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAMEMASTERPRIVILEGES)) then
		return false
	end

	doTransformItem(item.uid, window)
	return true
end

Co do matha to możesz stosofać tylko cyferki np. (1,2) i dasz if math = 1 itp.
 
Last edited:
Dzięki za matha, ale czy windows.lua przypadkiem nie jest otwieraniem okien w domach xd? Mi chodziło o takie okienko z informacjami i wyborem jak jest np. przy wylogowywaniu gdzie się klika yes lub no. No ale dzięki, teraz wiem jak działają okna w domkach ^^
 
Jest wszystko tam co chcesz :

function onUse(cid, item, fromPosition, itemEx, toPosition)
doTransformItem()


A w sumie nie wiem o co chodzi xd
 
a ja mam coś takiego

Lua:
doPlayerPopupFYI(cid, "\n t1 - Venore" ..
"\n t2 - Kazordoon" ..
"\n t3 - W trakcie" ..
"\n t4 - W trakcie :D \n\n" ..
"By hemrenus (:")


treść możesz sobie zmienić XD
 
dzięki kurwa! ^^

no i jeśli jeszcze chodzi o te math.random to mam taki skrypcik:
Code:
local diament = 2145
function onUse(cid, diament, fromPosition, itemEx, toPosition)
local 1 = doPlayerRemoveItem(cid, diament)
local 2 = doPlayerAddItem(uid, 2160)

  if item.itemid == diament then 
  math.random(1,2)
  end
 end
i wywala mi taki błąd w konsoli:
'<name>' expecter near '1'
jaka nazwa? ta zmienna jest przecie raczej dobrze zapisana =d.
 
Last edited:
nazwy zmiennych nie moga skladac sie z samych cyfr, pomysl co wtedy by bylo jakbys zrobil
Lua:
local 1 = 5
print(2+1) -- 3 czy 7, jest to niejednoznaczne
dlatego tez wywalilo Ci blad skladni
Lua:
local diament = 2145
function onUse(cid, item, fromPosition, itemEx, toPosition)
	local x = math.random(1,2)
	if item.itemid == diament then 
		if (x == 1) then
			doRemoveItem(item.uid)
		elseif (x == 2) then
			doPlayerAddItem(cid, 2160)
		end
	end
end
 
Last edited:
nazwy zmiennych nie moga skladac sie z samych cyfr, pomysl co wtedy by bylo jakbys zrobil
Lua:
local 1 = 5
print(2+1) -- 3 czy 7, jest to niejednoznaczne
dlatego tez wywalilo Ci blad skladni
Lua:
local diament = 2145
function onUse(cid, item, fromPosition, itemEx, toPosition)
	local x = math.random(1,2)
	if item.itemid == diament then 
		if (x == 1) then
			doRemoveItem(item.uid)
		elseif (x == 2) then
			doPlayerAddItem(cid, 2160)
		end
	end
end

panie it student

chujowy przykład pan dałeś z tym 1 = 5 bo lua od razu to odrzuci, wgl zadeklarowanie takiej zmiennej, nie można bezpośrednio liczb używać jako nazw zmiennych, żeby właśnie nie było takich rzeczy xd

Jest wszystko tam co chcesz :

function onUse(cid, item, fromPosition, itemEx, toPosition)
doTransformItem()


A w sumie nie wiem o co chodzi xd

@potar

ja nie wiem co ty ćpiesz czy zamiast czytać tematy to tylko nazwa tematu + scroll w dół i wklejasz byle co, bo tak to wyglądało xDDD







@ Temat:

Jest wszystko tam co chcesz :

function onUse(cid, item, fromPosition, itemEx, toPosition)
doTransformItem()


A w sumie nie wiem o co chodzi xd
 
Sorry spałem xd

Najnormalniej w świecie matha:

Lua:
local diament = 2145
function onUse(cid, item, fromPosition, itemEx, toPosition)
local rand = math.random(1,2)
	if item.itemid == diament then 
		if rand == 1 then
			doRemoveItem(item.uid)
		else
			doPlayerAddItem(cid, 2160)
		end
	end
end


Generalnie chodzi o to że math losuje Ci jedną cyferkę spośród x,y

math.random(x,y)

Jeżeli podstawimy pod x 1, a pod y 2.

Będzie nam losował tylko spośród 1 oraz 2.

Wtedy musisz zadeklarować co ma sie wydarzyć dla wylosowanej wartości x,y.
 
Last edited:
@seminari
dalem przyklad ktory nie jest poprawny tylko po to by pokazac jak to by bylo gdyby jednak nie wyjebywalo syntaxa... dlatego w dalszej czsci jest napisane ze wyjebie blad...
 
Status
Not open for further replies.
Back
Top