Page 9 of 10
Re: Lua chatbox
Posted: 01 Jan 2021, 10:14
by ian`
i got the other fact. if you call the build mode from createDraftDrawer, the draft will be added to the history as a new even if the draft in there before, not replace the last one.
@Lobby Sorry to mention you, could you fix this bug?
Re: Lua chatbox
Posted: 01 Jan 2021, 13:42
by Lobby
Thanks, will fix that
Re: Lua chatbox
Posted: 29 Jan 2021, 22:49
by 1Code
Code:
Select all Reset
GUI.addCanvas {
w = 30,
h = 30,
onDraw = function(self, x, y, w, h, hoverX, hoverY)
if hoverX ~= nil or hoverY ~= nil then
Drawing.setColor(0, 0, 0)
else
Drawing.setColor(255, 255, 255)
end
Drawing.drawRect(x, y, w, h)
end
}
--What do you think? Test this lua code on your PC ((not required but recommended) and reply with a screenshot or video)
Interactive Lua editorRun
Re: Lua chatbox
Posted: 16 Feb 2021, 08:53
by Lakan Haraya
I would like to tap the building and then GUI will appear, how can I do that?
Re: Lua chatbox
Posted: 16 Feb 2021, 09:12
by Hadestia
Lakan Haraya wrote: ↑16 Feb 2021, 08:53
I would like to tap the building and then GUI will appear, how can I do that?
Here's my script from my plugin for example
Code:
Select all Reset
local function BankMainUI()
local dialog = GUI.createDialog{
icon = Icon.MONEY,
title = 'Theonia Regional Bank',
width = 350,
height = 230,
pause = true
}
local function addLine(label, height)
local line = dialog.content:addLayout{height = height - 5}
line:addLabel{text = label, w = 0}
return line:addLayout{ x = 0}
end
local theme = dialog.content:addCanvas{
y = 35,onDraw=function(self,x,y,w,h)
Drawing.setAlpha(1)
Drawing.setColor(83,133,70)
Drawing.drawNinePatch(NinePatch.PANEL,x,y,w,h)
Drawing.reset()
end}
local layout
stateUI = 'A'
selection(dialog,stateUI,theme,layout)
local button1 = addLine("",0)
local function addSelectionButton(text, state,frame)
button1:addButton{
icon = frame,
w = -330,
h = 30,
frameDefault = NinePatch.TUTORIAL_UNMARK,
frameDown = NinePatch.TUTORIAL_MARK,
text = text,
onClick = function(self)stateUI = state
past2 = stateUI
end,
isPressed = function()
return stateUI == state
end
}
end
addSelectionButton('Deposit','A',Icon.LOAD_PAYBACK)
addSelectionButton('Withdraw', 'B',Icon.LOAN_TAKE)
addSelectionButton('Loan', 'C',Icon.LOAN)
addSelectionButton('Active Loan', 'AC',Icon.LOAN)
addSelectionButton(nil,'info',Icon.HELP)
end
function script:click(x,y,level)
local cv = Tile.isBuildingInConstruction(x,y)
if not cv and not City.isSandbox() then
BankMainUI()
return false
end
end
Interactive Lua editorRun
Re: Lua chatbox
Posted: 16 Feb 2021, 09:39
by ian`
Code:
Select all Reset
function script:click(x,y)
if Tile.isBuildingWorking(x,y) then -- check the building is not in construction and not empty, has power, water, and road connection if needed.
yourGUI() -- GUI function
return false -- prevent the default dialog appears
end
end
Interactive Lua editorRun
Re: Lua chatbox
Posted: 20 Feb 2021, 20:46
by erksmit
for the plugin im trying to make i need to notify a script in another draft when the user is done doing something, is this possible?
Re: Lua chatbox
Posted: 21 Feb 2021, 05:53
by Bearbear76
erksmit wrote: ↑20 Feb 2021, 20:46
for the plugin im trying to make i need to notify a script in another draft when the user is done doing something, is this possible?
I think using fun variables for simple numbers are good and for more complex stuff use storage.
Re: Lua chatbox
Posted: 21 Feb 2021, 16:36
by erksmit
Bearbear76 wrote: ↑21 Feb 2021, 05:53
erksmit wrote: ↑20 Feb 2021, 20:46
for the plugin im trying to make i need to notify a script in another draft when the user is done doing something, is this possible?
I think using fun variables for simple numbers are good and for more complex stuff use storage.
yeah i can pass the variables just fine, but i need to notify script 1 that script 2 is done doing stuff, while i can probably just look at a bools state every frame im wondering if theres something cleaner i can use
Re: Lua chatbox
Posted: 03 Mar 2021, 16:56
by ian`
why are there so many functions not works correctly now?
buildBuilding can't build RCI buildings, also isBuildingBuildable always returns false when checking RCI buildings.
Draft:isPlugin() can't work properly, but if not Draft:isPlugin() it works fine.
City.createDraftDrawer(d): isSelectable() gets an error on certain drafts.
Re: Lua chatbox
Posted: 03 Mar 2021, 21:24
by CommanderABab
buildBuilding can't build RCI buildings,
Probably unzoned or incorrect level zone.
Re: Lua chatbox
Posted: 05 Mar 2021, 05:14
by ian`
i have tried it last year and the RCI buildings can be built but without the zoning, and a few months ago it can only be built in zones and those that already have buildings.
EDIT -------
Also Tile.getGroundDraft is not return the draft of the ground. when I use lua wrapper, it says 'LuaRepr'.
Re: Lua chatbox
Posted: 06 Mar 2021, 21:05
by KINGTUT10101
I couldn't get buildBuilding() to work with RCI either.
Re: Lua chatbox
Posted: 01 Jun 2021, 17:16
by yusuf8a684
Can we use EVENT_CAR_REACHED for a specified car draft or does it takes the information of all cars target reaches?
And also City.spawncar(...) I tried using it but it didnt really did the work. Cars were spawning like how they are in the JSON code and not like the lua. I want them to only spawn in a time cycle (script.nextMonth)
Re: Lua chatbox
Posted: 05 Jun 2021, 22:44
by yusuf8a684
yusuf8a684 wrote: ↑01 Jun 2021, 17:16
Can we use EVENT_CAR_REACHED for a specified car draft or does it takes the information of all cars target reaches?
And also City.spawncar(...) I tried using it but it didnt really did the work. Cars were spawning like how they are in the JSON code and not like the lua. I want them to only spawn in a time cycle (script.nextMonth)
With a little hope to have an answer I also want to talk about notifications. I have made some notifications they are pop-uping at the times when I want but there is one problem I dont really know to fix...
I have put those notifications in script:nextMonth, yeah they pop up once it becomes next month but then they continue to pop up everyday. I want them to pop up once every month. How can I fix this (because this is annoying to close notifications every TT day)
Re: Lua chatbox
Posted: 16 Jun 2021, 00:36
by dc11
Is it possible to automatically rebuild a building that has reached level TTT in Lua to level T?
Re: Lua chatbox
Posted: 04 Jul 2021, 03:21
by dc11
local x,y
function script:init()
local building = Draft.getDraft('$prm_com02_01')
end
function script:daily (x, y, level)
local count = City.countBuildings(building)
for i, count do
x,y = City.getBuilding(i, building)
Builder.remove(x, y)
end
end
Is this a valid lua?
Re: Lua chatbox
Posted: 08 Jul 2021, 16:32
by Hadestia
dc11 wrote: ↑04 Jul 2021, 03:21
Is this a valid lua?
No, you should declare var "building" local outside the function
Re: Lua chatbox
Posted: 15 Aug 2021, 13:53
by Hadestia
Can i know how can i include explosion animation when removing buildings using "Builder.remove(x,y)"?
Re: Lua chatbox
Posted: 21 Nov 2021, 21:56
by Lobby
You don't. The explosion animation when removing a building is drawn by the removal tool itself so it cannot be drawn if the tool is not active.