I could have sworn there used to be a thread for quick Mudlet questions, but can't seem to find it. Anyways, I have a question.
If I wanted a trigger to fire only if in a particular room, how would I go about doing that? Isn't there some sort of gmcp.Room.Info.area but without the area, and only for the room?
Give us -real- shop logs! Not another misinterpretation of features we ask for, turned into something that either doesn't help at all, or doesn't remotely resemble what we wanted to begin with.
Thanks!
Current position of some of the playerbase, instead of expressing a desire to fix problems:
Vhaynna: "Honest question - if you don't like Achaea or the current admin, why do you even bother playing?"
0
Comments
if gmcp.Room.Info.num == ## ?
Personal example:
if gmcp.(in dragon) then
send("do thing")
elseif gmcp.(not in dragon)
send("do other thing")
What's the gmcp for dragon/lesser forms?
Not in game right now, so my gmcp reference might be wrong. Class might be held in Charstats instead of vitals, can't recall off top of head.
gmcp.Char.Status.class == "Silver Dragon"
Just got into work to check now.
e: Didn't refresh, Xaden beat me to it.
Dunn tells you, "I hate you."
(Party): You say, "Bad plan coming right up."
In the event you get multiple dragon colours.
Then you'd do:
Results of disembowel testing | Knight limb counter | GMCP AB files
And follow with:
send("clearalias dragonalias|setalias dragonalias dragoncurse " ..target.. " sensitivity 1/rend "..target.. " left leg curare")
send("clearqueue all|queue add eqbal stand|queue add eqbal dragonalias")
send("breathgust " .. target)
elseif gmcp.Char.Status.class == "Black Dragon" and venoms == nil then
send("clearalias dragonalias|setalias dragonalias dragoncurse " ..target.. " impatience 1/rend "..target.. " left leg prefarar")
send("clearqueue all|queue add eqbal stand|queue add eqbal dragonalias")
send("breathgust " .. target)
elseif gmcp.Char.Status.class == "Monk" then
sendAll("clearqueue all", "queue add eqbal stand", "queue add eqbal combo " .. target .. " snk left hfp left hfp left")
end
send("clearalias dragonbite|setalias dragonbite bite "..target)
send("clearqueue all|queue add eqbal dragonbite")
elseif gmcp.Char.Status.class == "Monk" then
send("clearqueue all|queue add eqbal stand|queue add bbt " .. target)
end
Results of disembowel testing | Knight limb counter | GMCP AB files
Results of disembowel testing | Knight limb counter | GMCP AB files
Do you really need to use a serverside alias? Your command would not hit the limit afaik. Be a model citizen and not spam with write/overwrites. Maybe that is where you are losing speed, because as Antonius says, your code should execute in no time.
Look at the timestamps.
41:15:369 ∘ You have cleared alias "roflmao".
41:15:369 ∘ Alias "roflmao" will now execute: "yawn"
41:15:369 ∘ You are exhausted and open your mouth in an enormous yawn.
41:15:369 ∘ 5980 (100) (99) [ex] ckdb-
41:15:727 ∘ You have cleared alias "roflmao".
41:15:727 ∘ Alias "roflmao" will now execute: "yawn"
41:15:727 ∘ You are exhausted and open your mouth in an enormous yawn.
41:15:727 ∘ 5980 (100) (99) [ex] ckdb-
41:16:181 ∘ You have cleared alias "roflmao".
41:16:181 ∘ Alias "roflmao" will now execute: "yawn"
41:16:182 ∘ You are exhausted and open your mouth in an enormous yawn.
41:59:283 ∘ 5980 (100) (99) [ex] ckdb-
42:00:954 ∘ You are exhausted and open your mouth in an enormous yawn.
42:00:954 ∘ 5980 (100) (100) [ex] ckdb-
42:01:062 ∘ You are exhausted and open your mouth in an enormous yawn.
42:01:062 ∘ 5980 (100) (100) [ex] ckdb-
42:01:195 ∘ You are exhausted and open your mouth in an enormous yawn.
if matches[3]:find(",") then enemies = string.split(matches[3], ", ") else
enemies = string.split(matches[3], " ") end
-- display(enemies)
for k,v in pairs(enemies) do
send("enemy " .. v)
end
if matches[3]:find(",") then enemies = string.split(matches[3], ", ") else
enemies = string.split(matches[3], " ") end
-- display(enemies)
for k,v in pairs(enemies) do
send("enemy " .. v)
elseif env == "Forest" then
etc.
Edit: added provisions for environment without action
GMCP documentation: https://github.com/keneanung/GMCPAdditions
svof github site: https://github.com/svof/svof and documentation at https://svof.github.io/svof
["natural underground"] = function()
harvestingtimer = tempTimer(4, [[mmp.gotoRoom(HarvestList[1])]])
end,
["forest"] = function()
harvestingtimer = tempTimer(7, [[mmp.gotoRoom(HarvestList[1])]])
end,
["garden"] = function()
harvestingtimer = tempTimer(7, [[mmp.gotoRoom(HarvestList[1])]])
end
["desert"] = function()
harvestingtimer = tempTimer(4, [[mmp.gotoRoom(HarvestList[1])]])
end
["grasslands"] = function()
harvestingtimer = tempTimer(4, [[mmp.gotoRoom(HarvestList[1])]])
end
["mountains"] = function()
harvestingtimer = tempTimer(2, [[mmp.gotoRoom(HarvestList[1])]])
end
["jungle"] = function()
harvestingtimer = tempTimer(5, [[mmp.gotoRoom(HarvestList[1])]])
end
["hills"] = function()
harvestingtimer = tempTimer(4, [[mmp.gotoRoom(HarvestList[1])]])
end
["swamp"] = function()
harvestingtimer = tempTimer(5, [[mmp.gotoRoom(HarvestList[1])]])
end
["valley"] = function()
harvestingtimer = tempTimer(2, [[mmp.gotoRoom(HarvestList[1])]])
end
["freshwater"] = function()
harvestingtimer = tempTimer(2, [[mmp.gotoRoom(HarvestList[1])]])
end
["river"] = function()
harvestingtimer = tempTimer(2, [[mmp.gotoRoom(HarvestList[1])]])
end
["water"] = function()
harvestingtimer = tempTimer(2, [[mmp.gotoRoom(HarvestList[1])]])
end
["ocean"] = function()
harvestingtimer = tempTimer(2, [[mmp.gotoRoom(HarvestList[1])]])
end
}
function Harvesting()
local roomInfo = gmcp.Room.Info
local env = roomInfo.environment
local action = actions[env]
if action then
action()
end
end
I put this in Scripts. Does anything need to be added?Results of disembowel testing | Knight limb counter | GMCP AB files
@Ismay I can show you what I have when I get home. Less functions. Might not be best code ever but it works. And Im fairly certain it uses way less functions (100% certain)