rightclick by profiles
 

News:

29 December 2022 - PtokaX 0.5.3.0 (20th anniversary edition) released...
11 April 2017 - PtokaX 0.5.2.2 released...
8 April 2015 Anti child and anti pedo pr0n scripts are not allowed anymore on this board!
28 September 2015 - PtokaX 0.5.2.1 for Windows 10 IoT released...
3 September 2015 - PtokaX 0.5.2.1 released...
16 August 2015 - PtokaX 0.5.2.0 released...
1 August 2015 - Crowdfunding for ADC protocol support in PtokaX ended. Clearly nobody want ADC support...
30 June 2015 - PtokaX 0.5.1.0 released...
30 April 2015 Crowdfunding for ADC protocol support in PtokaX
26 April 2015 New support hub!
20 February 2015 - PtokaX 0.5.0.3 released...
13 April 2014 - PtokaX 0.5.0.2 released...
23 March 2014 - PtokaX testing version 0.5.0.1 build 454 is available.
04 March 2014 - PtokaX.org sites were temporary down because of DDOS attacks and issues with hosting service provider.

Main Menu

rightclick by profiles

Started by Jaakko, 02 September, 2005, 12:17:52

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Jaakko

Tried to make my own but it didn't work.
I need something like this.
code code code

menu\\command$ !example -- for master and below profiles

code code code

menu\\command$ !example2 -- for operator and below profiles

code code code
My profiles are Admin, Master, Operator, VIP and REG

bastya_elvtars

Everything could have been anything else and it would have just as much meaning.

Jaakko

Readed that before tried to make my own rightclick commands, but maby I just too dumb or my english isn't good enough.
Didn't work.

bastya_elvtars

QuoteOriginally posted by Jaakko
Readed that before tried to make my own rightclick commands, but maby I just too dumb or my english isn't good enough.
Didn't work.

Then post your current code, and have you read the dcpp wiki?
Everything could have been anything else and it would have just as much meaning.

Jaakko

-- Hiirikomennot


rc_by_profiles={

[-1]={"1 3Komennot\\ Yleiset\\Muut BAWD hubit$<%[mynick]> !motd|"},
[-1]={"1 3 Komennot\\Yleiset\\Hubin s??nn?t$<%[mynick]> !rules|"},
[-1]={"1 3 Komennot\\Yleiset\\N?yt? oma IP$<%[mynick]> |"},
[-1]={"1 3 Komennot\\Yleiset\\Puhu kolmannessa persoonassa$<%[mynick]> !me %[line:Lause]|"},
[-1]={"1 3 Komennot\\Anagrammi\\K?ynnist?$<%[mynick]> a.start|"},
[-1]={"1 3 Komennot\\Anagrammi\\Sammuta$<%[mynick]> a.stop|"},
[-1]={"1 3 Komennot\\Anagrammi\\Top 40 pelaajat$<%[mynick]> a.scores|"},
[-1]={"1 3 Komennot\\Anagrammi\\Help$<%[mynick]> a.help|"},

[2]={"1 3 Komennot\\Info\\Hubin tiedot$<%[mynick]> !stats|"},
[2]={"1 2 Komennot\\Info\\K?ytt?j?n tiedot$<%[mynick]> !getinfo %[nick]|"},
[2]={"1 3 Komennot\\Info\\K?ytt?j?n tiedot $<%[mynick]> !getinfo %[line:Nimi]|"},

}



-- User levels. The more rights a user has, the higher the value for the profile key is.

userlevels={ 

[-1] = 1,

[0] = 6,

[1] = 5,

[2] = 4,

[3] = 3,

[4] = 2 }


function NewUserConnected(user)
	if user.bUserCommand then -- if his client accepts usercommands
		user:SendData("$UserCommand 0 3") -- separator
		for a,b in rc_by_profiles do -- thorough checking this table :)
			-- if his rights are equal or higher than needed for taht command
			if userlevels[user.iProfile] >= userlevels[a] then
				for k=1,table.getn(b) do -- parse array containing commands
				-- and send its elements according to NMDC protocol
					user:SendData("$UserCommand "..b[k])
				end
			end
		end
	end
end

OpConnected=NewUserConnected
When I connect as unreg I get Komennot\Anagrammi\Help
and as OP I get the same one and Komennot\Info\K?ytt?j?n tiedot
I know I'm missing something important here.
Dcpp wiki??? Link please.

bastya_elvtars

-- the higher the profile is, the bigger the number

userlevels={ 
[-1] = 1, -- guest
[0] = 6, -- masters
[1] = 4, -- ops
[2] = 3, -- vips
[3] = 2, -- regs
[4] = 5, -- admin
}

-- and like this: 

toSend=
  {
  -- ops + above
  ["something"]=4,
  
  -- vips & above
  ["thingy"]=3,
  
  -- masters only
  ["stuff"]=6,
  }
  
function NewUserConnected(user)
  if user.bUserCommand then
    for a,b in pairs(toSend) do
      if userlevels[user.iProfile] >= b then
        user:SendData(a)
      end
    end
  end
end

OpConnected = NewUserConnected

Hope this helps, and the link is:
DC++ Wiki
Everything could have been anything else and it would have just as much meaning.

Jaakko

#6
Damn.
[17:49] Syntax hiirikomennot.lua:19: `}' expected (to close `{' at line 12) near `['

-- Hiirikomennot

userlevels={ 
[-1] = 1, -- unreg
[0] = 6, -- admin
[1] = 5, -- master
[2] = 4, -- operator
[3] = 3, -- vip
[4] = 2, -- reg
}

toSend={
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Oma IP$<%[mynick]> !myip||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\S??nn?t$<%[mynick]> !rules||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Muut BAWD hubit$<%[mynick]> !motd||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Puhu kolmannessa persoonassa$<%[mynick]> !me %[line: Viesti]||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Help$<%[mynick]> !help||"]=1

		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\K?ynnist?$<%[mynick]> a.start||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\Sammuta$<%[mynick]> a.stop||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\Top 40 pelaajat$<%[mynick]> a.scores||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\Help$<%[mynick]> a.help||"]=1,

		["$UserCommand 1 2 Hiirikomennot\\Potkut ja bannit\\??net?n potku$<%[mynick]> !drop %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Potkut ja bannit\\??net?n potku$<%[mynick]> !drop %[line: Nimi]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Potkut ja bannit\\Aikabanni$<%[mynick]> !tempban %[nick] %[line: Aika (p?ivin?)]d||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Potkut ja bannit\\Aikabanni$<%[mynick]> !tempban %[line: Nimi] %[line: Aika (p?ivin?)]d||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\N?yt? aikabannit$<%[mynick]> !gettempbanlist||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista aikabanni$<%[mynick]> !tempunban %[line: IP]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista kaikki aikabannit$<%[mynick]> !clrtempban||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Potkut ja bannit\\Pysyv? banni$<%[mynick]> !nickban %[nick]||"]=5,
		["$UserCommand 1 1 Hiirikomennot\\Potkut ja bannit\\Pysyv? banni$<%[mynick]> !nickban %[line: Nimi]||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\N?yt? pysyv?t bannit$<%[mynick]> !getbanlist||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista pysyv? banni$<%[mynick]> !unban %[line: Nimi tai IP]||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista kaikki pysyv?t bannit$<%[mynick]> !clrpermban||"]=6,

		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Vaienna k?ytt?j?$<%[mynick]> !gag %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Kenny ja vaiennus\\Vaienna k?ytt?j?$<%[mynick]> !gag %[line: Nimi]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Anna ??ni takaisin$<%[mynick]> !ungag %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Kenny ja vaiennus\\Anna ??ni takaisin$<%[mynick]> !ungag %[line: Nimi]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Muuta k?ytt?j? Kennyksi$<%[mynick]> !kenny %[nick]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Muuta Kenny k?ytt?j?ksi$<%[mynick]> !unkenny %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Kenny ja vaiennus\\Muuta Kenny k?ytt?j?ksi$<%[mynick]> !unkenny %[line: Nimi]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Tiedot ja viestit\\Hubin tiedot$<%[mynick]> !stats||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Tiedot ja viestit\\K?ytt?j?n tiedot$<%[mynick]> !getinfo %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Tiedot ja viestit\\K?ytt?j?n tiedot$<%[mynick]> !getinfo %[line: Nimi]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Tiedot ja viestit\\L?het? viesti jokaiselle k?ytt?j?lle$<%[mynick]> !massmsg %[line: Viesti]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Tiedot ja viestit\\L?het? viesti jokaiselle OP:lle$<%[mynick]> !opmassmsg %l[ine: Viesti]||"]=4,

		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Muuta salasanasi$<%[mynick]> !passwd %[line: Uusi salasana]||"]=2,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Reggaa uusi Master$<%[mynick]> !addreguser %[line: Nimi] %[line: Salasana] Master||"]=6,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Reggaa uusi OP$<%[mynick]> !addreguser %[line: Nimi] %[line: Salasana] Operator||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Reggaa uusi VIP$<%[mynick]> !addreguser %[line: Nimi] %[line: Salasana] VIP||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Reggaukset ja hubi\\Anna v?liaikainen OP arvo$<%[mynick]> !op %[nick]||"]=5,
		["$UserCommand 1 1 Hiirikomennot\\Reggaukset ja hubi\\Anna v?liaikainen OP arvo$<%[mynick]> !op %[line: Nimi]||"]=5,
		["$UserCommand 1 2 Hiirikomennot\\Reggaukset ja hubi\\Poista reggaus$<%[mynick]> !delreguser %[nick]||"]=5,
		["$UserCommand 1 1 Hiirikomennot\\Reggaukset ja hubi\\Poista reggaus$<%[mynick]> !delreguser %[line: Nimi]||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Muuta hubin topic$<%[mynick]> !topic %[line: Uusi topic]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\K?ynnist? hubi uudelleen$<%[mynick]> !restart||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\K?ynnist? scriptit uudelleen$<%[mynick]> !restartscripts||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Lataa kaikki tekstitiedostot uudelleen$<%[mynick]> !reloadtxt||"]=5,
}

function NewUserConnected(user)
	if user.bUserCommand then -- if his client accepts usercommands
		["$UserCommand 0 3"]=x, -- separator
		for a,b in rc_by_profiles do -- thorough checking this table :)
			-- if his rights are equal or higher than needed for taht command
			if userlevels[user.iProfile] >= userlevels[a] then
				for k=1,table.getn(b) do -- parse array containing commands
				-- and send its elements according to NMDC protocol
					["$UserCommand "..b[k])
				end
			end
		end
	end
end

OpConnected=NewUserConnected

bastya_elvtars

Seems like you are not familiar with table constructors. Read this.
Everything could have been anything else and it would have just as much meaning.

Jaakko

#8
QuoteOriginally posted by bastya_elvtars
Seems like you are not familiar with table constructors. Read this.
Readed that and now I'm even more confused.
I guesss I need to learn better english before lua.
Could someone fix my script, or tell me what to do to it.

damo

im sure if you re check your script you will see what error you have made and reading the link bastya_elvtars has given then you will be able to see the answer. would be easy to post the complete script but you will never fully learn till you work it all out from little pointers

Jaakko

#10
So.
-- Hiirikomennot

userlevels={ 
[-1] = 1, -- unreg
[0] = 6, -- admin
[1] = 5, -- master
[2] = 4, -- operator
[3] = 3, -- vip
[4] = 2, -- reg
}

toSend={
		["$UserCommand 0 3"]
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Oma IP$<%[mynick]> !myip||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\S??nn?t$<%[mynick]> !rules||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Muut BAWD hubit$<%[mynick]> !motd||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Puhu kolmannessa persoonassa$<%[mynick]> !me %[line: Viesti]||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Help$<%[mynick]> !help||"]=1

		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\K?ynnist?$<%[mynick]> a.start||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\Sammuta$<%[mynick]> a.stop||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\Top 40 pelaajat$<%[mynick]> a.scores||"]=1,
		["$UserCommand 1 3 Hiirikomennot\\Anagrammi\\Help$<%[mynick]> a.help||"]=1,

		["$UserCommand 1 2 Hiirikomennot\\Potkut ja bannit\\??net?n potku$<%[mynick]> !drop %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Potkut ja bannit\\??net?n potku$<%[mynick]> !drop %[line: Nimi]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Potkut ja bannit\\Aikabanni$<%[mynick]> !tempban %[nick] %[line: Aika (p?ivin?)]d||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Potkut ja bannit\\Aikabanni$<%[mynick]> !tempban %[line: Nimi] %[line: Aika (p?ivin?)]d||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\N?yt? aikabannit$<%[mynick]> !gettempbanlist||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista aikabanni$<%[mynick]> !tempunban %[line: IP]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista kaikki aikabannit$<%[mynick]> !clrtempban||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Potkut ja bannit\\Pysyv? banni$<%[mynick]> !nickban %[nick]||"]=5,
		["$UserCommand 1 1 Hiirikomennot\\Potkut ja bannit\\Pysyv? banni$<%[mynick]> !nickban %[line: Nimi]||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\N?yt? pysyv?t bannit$<%[mynick]> !getbanlist||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista pysyv? banni$<%[mynick]> !unban %[line: Nimi tai IP]||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Potkut ja bannit\\Poista kaikki pysyv?t bannit$<%[mynick]> !clrpermban||"]=6,

		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Vaienna k?ytt?j?$<%[mynick]> !gag %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Kenny ja vaiennus\\Vaienna k?ytt?j?$<%[mynick]> !gag %[line: Nimi]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Anna ??ni takaisin$<%[mynick]> !ungag %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Kenny ja vaiennus\\Anna ??ni takaisin$<%[mynick]> !ungag %[line: Nimi]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Muuta k?ytt?j? Kennyksi$<%[mynick]> !kenny %[nick]||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Kenny ja vaiennus\\Muuta Kenny k?ytt?j?ksi$<%[mynick]> !unkenny %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Kenny ja vaiennus\\Muuta Kenny k?ytt?j?ksi$<%[mynick]> !unkenny %[line: Nimi]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Tiedot ja viestit\\Hubin tiedot$<%[mynick]> !stats||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Tiedot ja viestit\\K?ytt?j?n tiedot$<%[mynick]> !getinfo %[nick]||"]=4,
		["$UserCommand 1 1 Hiirikomennot\\Tiedot ja viestit\\K?ytt?j?n tiedot$<%[mynick]> !getinfo %[line: Nimi]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Tiedot ja viestit\\L?het? viesti jokaiselle k?ytt?j?lle$<%[mynick]> !massmsg %[line: Viesti]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Tiedot ja viestit\\L?het? viesti jokaiselle OP:lle$<%[mynick]> !opmassmsg %l[ine: Viesti]||"]=4,

		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Muuta salasanasi$<%[mynick]> !passwd %[line: Uusi salasana]||"]=2,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Reggaa uusi Master$<%[mynick]> !addreguser %[line: Nimi] %[line: Salasana] Master||"]=6,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Reggaa uusi OP$<%[mynick]> !addreguser %[line: Nimi] %[line: Salasana] Operator||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Reggaa uusi VIP$<%[mynick]> !addreguser %[line: Nimi] %[line: Salasana] VIP||"]=4,
		["$UserCommand 1 2 Hiirikomennot\\Reggaukset ja hubi\\Anna v?liaikainen OP arvo$<%[mynick]> !op %[nick]||"]=5,
		["$UserCommand 1 1 Hiirikomennot\\Reggaukset ja hubi\\Anna v?liaikainen OP arvo$<%[mynick]> !op %[line: Nimi]||"]=5,
		["$UserCommand 1 2 Hiirikomennot\\Reggaukset ja hubi\\Poista reggaus$<%[mynick]> !delreguser %[nick]||"]=5,
		["$UserCommand 1 1 Hiirikomennot\\Reggaukset ja hubi\\Poista reggaus$<%[mynick]> !delreguser %[line: Nimi]||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Muuta hubin topic$<%[mynick]> !topic %[line: Uusi topic]||"]=4,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\K?ynnist? hubi uudelleen$<%[mynick]> !restart||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\K?ynnist? scriptit uudelleen$<%[mynick]> !restartscripts||"]=5,
		["$UserCommand 1 3 Hiirikomennot\\Reggaukset ja hubi\\Lataa kaikki tekstitiedostot uudelleen$<%[mynick]> !reloadtxt||"]=5,
}

function NewUserConnected(user)
	if user.bUserCommand then
		for a,b in (toSend) do
		if userlevels[user.iProfile] >= b then
			user:SendData(a)
			end
		end
	end
end

OpConnected=NewUserConnected

function NewUserConnected(user)
	if user.bUserCommand then
Someone connects to my hub and if his client accepts commands.

for a,b in (toSend) do
		if userlevels[user.iProfile] >= b then
			user:SendData(a)
And his profile is equal or higher to b send a.

But why do I always get this error? [11:23] Syntax D:\Temp\scripts\hiirikomennot.lua:19: `}' expected (to close `{' at line 12) near `['

I'm starting to think that I relly am too dumb to learn lua.
Or that all of you are just having a lauhg at my cost.

bastya_elvtars

A comma (,) is missing somewhere.
Everything could have been anything else and it would have just as much meaning.

Tw?sT?d-d?v

comma missing on line 19

["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Help$<%[mynick]> !help||"]=1

should be
["$UserCommand 1 3 Hiirikomennot\\Yleiset\\Help$<%[mynick]> !help||"]=1,

SMF spam blocked by CleanTalk