Ir para conteúdo

Featured Replies

Postado

Estou com um problema no archievements, quando faço a quest ou adicono os pontos pela talkactions da esse erro.

Estou usando tfs 1.2, e sei que tem funções que não funcionam. Mais posso usar o que para subistituir?

 

 

24320.JPG

 

 

talkaction.

function onSay(player, words, param)

	if words == "/addach" then
		local p = param:split(",")

		if not p[2] then
			return player:sendCancelMessage("Insufficient parameters.")
		end

		local target = Player(p[1])
		local action = p[2]

		if not target then
			return player:sendCancelMessage("A player with that name is not online.")
		end

		if action == "all" then
			return target:addAllAchievements(true)
		end --add all achievements

		local ach = (isNumber(action) and tonumber(action) or action)
		target:addAchievement(ach, true)

		return true
	end

	if words == "/removeach" then
		local p = param:split(",")

		if not p[2] then
			return player:sendCancelMessage("Insufficient parameters.")
		end

		local target = Player(p[1])
		local action = p[2]

		if not target then
			return player:sendCancelMessage("A player with that name is not online.")
		end

		if action == "all" then
			return target:removeAllAchievements()
		end --remove all achievements

		local ach = (isNumber(action) and tonumber(action) or action)
		target:removeAchievement(ach)
		return true
	end
	return false
end

Editado por pedrook (veja o histórico de edições)

Postado

Estou com um problema no archievements, quando faço a quest ou adicono os pontos pela talkactions da esse erro.

Estou usando tfs 1.2, e sei que tem funções que não funcionam. Mais posso usar o que para subistituir?

 

 

24320.JPG

 

 

talkaction.

function onSay(player, words, param)

	if words == "/addach" then
		local p = param:split(",")

		if not p[2] then
			return player:sendCancelMessage("Insufficient parameters.")
		end

		local target = Player(p[1])
		local action = p[2]

		if not target then
			return player:sendCancelMessage("A player with that name is not online.")
		end

		if action == "all" then
			return target:addAllAchievements(true)
		end --add all achievements

		local ach = (isNumber(action) and tonumber(action) or action)
		target:addAchievement(ach, true)

		return true
	end

	if words == "/removeach" then
		local p = param:split(",")

		if not p[2] then
			return player:sendCancelMessage("Insufficient parameters.")
		end

		local target = Player(p[1])
		local action = p[2]

		if not target then
			return player:sendCancelMessage("A player with that name is not online.")
		end

		if action == "all" then
			return target:removeAllAchievements()
		end --remove all achievements

		local ach = (isNumber(action) and tonumber(action) or action)
		target:removeAchievement(ach)
		return true
	end
	return false
end

 

criar um lua lá na pasta lib e add

 

 

ACHIEVEMENTSPOINTS_BASE = "achievement_points"

achievements = {

[1] = {name = "Afraid of no Ghost!", grade = 1, points = 2, secret = false},

[2] = {name = "Allow Cookies?", grade = 1, points = 2, secret = false},

[3] = {name = "Allowance Collector", grade = 1, points = 2, secret = true},

[4] = {name = "Amateur Actor", grade = 1, points = 2, secret = false},

[5] = {name = "Animal Activist", grade = 1, points = 2, secret = false},

[6] = {name = "Arachnoise", grade = 1, points = 1, secret = false},

[7] = {name = "Archpostman", grade = 1, points = 3, secret = false},

[8] = {name = "Askarak Nemesis", grade = 1, points = 1, secret = true},

[9] = {name = "Baby Sitter", grade = 1, points = 1, secret = true},

[10] = {name = "Back from the Dead", grade = 1, points = 2, secret = false},

[11] = {name = "Back into the Abyss", grade = 1, points = 1, secret = false},

[12] = {name = "Backpack Tourist", grade = 1, points = 1, secret = true},

[13] = {name = "Bad Timing", grade = 1, points = 2, secret = true},

[14] = {name = "Bane of the Hive", grade = 1, points = 2, secret = false},

[15] = {name = "Banebringers' Bane", grade = 1, points = 2, secret = true},

[16] = {name = "Beach Tamer", grade = 1, points = 2, secret = false},

[17] = {name = "Bearhugger", grade = 1, points = 1, secret = false},

[18] = {name = "Beautiful Agony", grade = 1, points = 2, secret = false},

[19] = {name = "Berserker", grade = 1, points = 3, secret = false},

[20] = {name = "King of the Ring", grade = 1, points = 2, secret = false},

[21] = {name = "Blessed!", grade = 1, points = 2, secret = false},

[22] = {name = "Blood-Red Snapper", grade = 1, points = 1, secret = false},

[23] = {name = "Bluebarian", grade = 1, points = 2, secret = true},

[24] = {name = "Bone Brother", grade = 1, points = 1, secret = false},

[25] = {name = "Breaking the Ice", grade = 1, points = 1, secret = false},

[26] = {name = "Bunny Slipped", grade = 1, points = 2, secret = true},

[27] = {name = "Cake Conqueror", grade = 1, points = 1, secret = true},

[28] = {name = "Chest Robber", grade = 1, points = 1, secret = false},

[29] = {name = "Choking on Her Venom", grade = 1, points = 1, secret = false},

[30] = {name = "Chorister", grade = 1, points = 1, secret = false},

[31] = {name = "Clay Fighter", grade = 1, points = 3, secret = true},

[32] = {name = "Coccon of Doom", grade = 1, points = 3, secret = true},

[33] = {name = "Commitment Phobic", grade = 1, points = 2, secret = true},

[34] = {name = "Confusion", grade = 1, points = 0, secret = false},

[35] = {name = "Cookie Monster", grade = 1, points = 1, secret = true},

[36] = {name = "Crawling Death", grade = 1, points = 1, secret = false},

[37] = {name = "Cursed!", grade = 1, points = 3, secret = true},

[38] = {name = "Daring Trespasser", grade = 1, points = 3, secret = true},

[39] = {name = "Dark Voodoo Priest", grade = 1, points = 2, secret = true},

[40] = {name = "Dazzler", grade = 1, points = 3, secret = false},

[41] = {name = "Death Song", grade = 1, points = 3, secret = false},

[42] = {name = "Deer Hunt", grade = 1, points = 1, secret = true},

[43] = {name = "Demonic Barkeeper", grade = 1, points = 3, secret = false},

[44] = {name = "Depth Dwellers", grade = 1, points = 3, secret = false},

[45] = {name = "Desert Fisher", grade = 1, points = 1, secret = false},

[46] = {name = "Do not Disturb", grade = 1, points = 1, secret = true},

[47] = {name = "Doctor! Doctor!", grade = 1, points = 2, secret = true},

[48] = {name = "Dog Slitter", grade = 1, points = 1, secret = false},

[49] = {name = "Down the Drain", grade = 1, points = 2, secret = false},

[50] = {name = "Dream's Over", grade = 1, points = 1, secret = false},

[51] = {name = "Efreet Ally", grade = 1, points = 3, secret = false},

[52] = {name = "Enter zze Draken!", grade = 1, points = 2, secret = false},

[53] = {name = "Exquisite Taste", grade = 1, points = 2, secret = false},

[54] = {name = "Extreme Degustation", grade = 1, points = 2, secret = true},

[55] = {name = "Eye of the Deep", grade = 1, points = 1, secret = true},

[56] = {name = "Fire Devil", grade = 1, points = 3, secret = true},

[57] = {name = "Fire from the Earth", grade = 1, points = 2, secret = false},

[58] = {name = "Fire Lighter", grade = 1, points = 1, secret = true},

[59] = {name = "Firefighter", grade = 1, points = 2, secret = true},

[60] = {name = "Fireworks in the Sky", grade = 1, points = 2, secret = true},

[61] = {name = "Fool at Heart", grade = 1, points = 3, secret = false},

[62] = {name = "Fountain of Life", grade = 1, points = 1, secret = true},

[63] = {name = "Free Items!", grade = 1, points = 3, secret = true},

[64] = {name = "Gatherer", grade = 1, points = 2, secret = false},

[65] = {name = "Gem Cutter", grade = 1, points = 1, secret = true},

[66] = {name = "Ghost Sailor", grade = 1, points = 1, secret = true},

[67] = {name = "Ghostwhisperer", grade = 1, points = 3, secret = false},

[68] = {name = "Greenhorn", grade = 1, points = 2, secret = false},

[69] = {name = "Guard Killer", grade = 1, points = 2, secret = false},

[70] = {name = "Guinea Pig", grade = 1, points = 2, secret = false},

[71] = {name = "Happy Farmer", grade = 1, points = 1, secret = true},

[72] = {name = "Headache", grade = 1, points = 2, secret = false},

[73] = {name = "Heartburn", grade = 1, points = 3, secret = false},

[74] = {name = "Here, Fishy Fishy!", grade = 1, points = 1, secret = true},

[75] = {name = "Hickup", grade = 1, points = 2, secret = false},

[76] = {name = "Hidden Powers", grade = 1, points = 2, secret = false},

[77] = {name = "His True Face", grade = 1, points = 3, secret = true},

[78] = {name = "Hissing Downfall", grade = 1, points = 2, secret = false},

[79] = {name = "Hive Fighter", grade = 1, points = 1, secret = false},

[80] = {name = "Hive Infiltrator", grade = 1, points = 3, secret = false},

[81] = {name = "Hive War Veteran", grade = 1, points = 1, secret = false},

[82] = {name = "Homebrewed", grade = 1, points = 1, secret = true},

[83] = {name = "Honest Finder", grade = 1, points = 1, secret = false},

[84] = {name = "Honorary Barbarian", grade = 1, points = 1, secret = false},

[85] = {name = "Howly Silence", grade = 1, points = 1, secret = false},

[86] = {name = "Huntsman", grade = 1, points = 2, secret = false},

[87] = {name = "I Did My Part", grade = 1, points = 2, secret = true},

[88] = {name = "I Like it Fancy", grade = 1, points = 1, secret = true},

[89] = {name = "I Need a Hug", grade = 1, points = 2, secret = false},

[90] = {name = "Ice Harvester", grade = 1, points = 1, secret = false},

[91] = {name = "Ice Sculptor", grade = 1, points = 3, secret = true},

[92] = {name = "Invader of the Deep", grade = 1, points = 2, secret = true},

[93] = {name = "Jinx", grade = 1, points = 2, secret = true},

[94] = {name = "Joke's on You", grade = 1, points = 1, secret = true},

[95] = {name = "Just Cracked Me Up!", grade = 1, points = 2, secret = false},

[96] = {name = "Just in Time", grade = 1, points = 1, secret = false},

[97] = {name = "Kapow!", grade = 1, points = 1, secret = false},

[98] = {name = "Keeper of the Flame", grade = 1, points = 2, secret = true},

[99] = {name = "King Tibianus Fan", grade = 1, points = 3, secret = false},

[100] = {name = "Let the Sunshine In", grade = 1, points = 1, secret = true},

[101] = {name = "Loyal Subject", grade = 1, points = 1, secret = true},

[102] = {name = "Lucid Dreamer", grade = 1, points = 2, secret = false},

[103] = {name = "Mageslayer", grade = 1, points = 1, secret = true},

[104] = {name = "Make a Wish", grade = 1, points = 1, secret = true},

[105] = {name = "Marbeleous", grade = 1, points = 3, secret = true},

[106] = {name = "Marid Ally", grade = 1, points = 3, secret = false},

[107] = {name = "Masquerader", grade = 1, points = 3, secret = true},

[108] = {name = "Master Shapeshifter", grade = 1, points = 2, secret = true},

[109] = {name = "Mastermind", grade = 1, points = 3, secret = false},

[110] = {name = "Matchmaker", grade = 1, points = 1, secret = false},

[111] = {name = "Mathemagician", grade = 1, points = 1, secret = false},

[112] = {name = "Meat Skewer", grade = 1, points = 1, secret = false},

[113] = {name = "Merry Adventures", grade = 1, points = 2, secret = false},

[114] = {name = "Ministrel", grade = 1, points = 2, secret = true},

[115] = {name = "Minor Disturbance", grade = 1, points = 2, secret = false},

[116] = {name = "Mister Sandman", grade = 1, points = 2, secret = true},

[117] = {name = "Modest Guest", grade = 1, points = 1, secret = true},

[118] = {name = "Mutated Presents", grade = 1, points = 1, secret = true},

[119] = {name = "Natural Born Cowboy", grade = 1, points = 1, secret = true},

[120] = {name = "Natural Sweetener", grade = 1, points = 1, secret = true},

[121] = {name = "Nether Pirate", grade = 1, points = 3, secret = true},

[122] = {name = "Nightmare Knight", grade = 1, points = 1, secret = false},

[123] = {name = "No More Hiding", grade = 1, points = 1, secret = false},

[124] = {name = "Nomad Soul", grade = 1, points = 2, secret = true},

[125] = {name = "Nothing Can Stop Me", grade = 1, points = 1, secret = true},

[126] = {name = "Number of the Beast", grade = 1, points = 2, secret = false},

[127] = {name = "One Less", grade = 1, points = 2, secret = false},

[128] = {name = "Oops", grade = 1, points = 2, secret = true},

[129] = {name = "Party Animal", grade = 1, points = 1, secret = true},

[130] = {name = "Passionate Kisser", grade = 1, points = 3, secret = false},

[131] = {name = "Perfect Fool", grade = 1, points = 3, secret = false},

[132] = {name = "Petrologist", grade = 1, points = 2, secret = true},

[133] = {name = "Piece of Cake", grade = 1, points = 1, secret = false},

[134] = {name = "Pimple", grade = 1, points = 3, secret = false},

[135] = {name = "Planter", grade = 1, points = 2, secret = false},

[136] = {name = "Poet Laureate", grade = 1, points = 2, secret = true},

[137] = {name = "Preservationist", grade = 1, points = 1, secret = true},

[138] = {name = "Quick as a Turtle", grade = 1, points = 2, secret = true},

[139] = {name = "Recognised Trader", grade = 1, points = 3, secret = false},

[140] = {name = "Rock Me to Sleep", grade = 1, points = 1, secret = true},

[141] = {name = "Rocket in Pocket", grade = 1, points = 1, secret = true},

[142] = {name = "Rockstar", grade = 1, points = 3, secret = true},

[143] = {name = "Rollercoaster", grade = 1, points = 1, secret = false},

[144] = {name = "Rootless Behaviour", grade = 1, points = 1, secret = false},

[145] = {name = "Safely Stored Away", grade = 1, points = 2, secret = true},

[146] = {name = "Santa's Li'l Helper", grade = 1, points = 2, secret = true},

[147] = {name = "Scorched Flames", grade = 1, points = 1, secret = false},

[148] = {name = "Scrapper", grade = 1, points = 3, secret = false},

[149] = {name = "Sea Scout", grade = 1, points = 2, secret = false},

[150] = {name = "Secret Agent", grade = 1, points = 1, secret = false},

[151] = {name = "Shaburak Nemesis", grade = 1, points = 1, secret = true},

[152] = {name = "Sharpshooter", grade = 1, points = 3, secret = false},

[153] = {name = "Si, Ariki!", grade = 1, points = 1, secret = false},

[154] = {name = "Shell Seeker", grade = 1, points = 3, secret = true},

[155] = {name = "Silent Pet", grade = 1, points = 1, secret = true},

[156] = {name = "Slayer of Anmothra", grade = 1, points = 2, secret = true},

[157] = {name = "Slayer of Chikhaton", grade = 1, points = 2, secret = true},

[158] = {name = "Slayer of Irahsae", grade = 1, points = 2, secret = true},

[159] = {name = "Slayer of Phrodomo", grade = 1, points = 2, secret = true},

[160] = {name = "Slayer of Teneshpar", grade = 1, points = 2, secret = true},

[161] = {name = "Slim Chance", grade = 1, points = 1, secret = false},

[162] = {name = "Slimer", grade = 1, points = 1, secret = true},

[163] = {name = "Snowbunny", grade = 1, points = 2, secret = true},

[164] = {name = "Someone's Bored", grade = 1, points = 1, secret = true},

[165] = {name = "Something Smells", grade = 1, points = 1, secret = false},

[166] = {name = "Something's in There", grade = 1, points = 1, secret = true},

[167] = {name = "Spareribs for Dinner", grade = 1, points = 1, secret = false},

[168] = {name = "Spectral Traveler", grade = 1, points = 2, secret = true},

[169] = {name = "Steampunked", grade = 1, points = 2, secret = true},

[170] = {name = "Stepped on a Big Toe", grade = 1, points = 1, secret = false},

[171] = {name = "Supersitious", grade = 1, points = 2, secret = true},

[172] = {name = "Supplier", grade = 1, points = 3, secret = false},

[173] = {name = "Sweet Tooth", grade = 1, points = 2, secret = true},

[174] = {name = "Talented Dancer", grade = 1, points = 1, secret = false},

[175] = {name = "Teamplayer", grade = 1, points = 2, secret = true},

[176] = {name = "Territorial", grade = 1, points = 1, secret = true},

[177] = {name = "The Cake's the Truth", grade = 1, points = 1, secret = true},

[178] = {name = "The Day After", grade = 1, points = 2, secret = true},

[179] = {name = "The Drowned Sea God", grade = 1, points = 2, secret = false},

[180] = {name = "The Milkman", grade = 1, points = 2, secret = false},

[181] = {name = "The Serpent's Bride", grade = 1, points = 2, secret = false},

[182] = {name = "The Undertaker", grade = 1, points = 2, secret = true},

[183] = {name = "Torn Treasures", grade = 1, points = 1, secret = true},

[184] = {name = "Trail of the Ape God", grade = 1, points = 1, secret = true},

[185] = {name = "True Colors", grade = 1, points = 3, secret = true},

[186] = {name = "Truth Be Told", grade = 1, points = 2, secret = true},

[187] = {name = "Twisted Mutation", grade = 1, points = 1, secret = false},

[188] = {name = "Vanity", grade = 1, points = 3, secret = true},

[189] = {name = "Vive la Resistance", grade = 1, points = 2, secret = false},

[190] = {name = "Wayfarer", grade = 1, points = 3, secret = true},

[191] = {name = "Whistle-Blower", grade = 1, points = 1, secret = true},

[192] = {name = "Witches Lil' Helper", grade = 1, points = 1, secret = true},

[193] = {name = "With a Cherry on Top", grade = 1, points = 1, secret = true},

[194] = {name = "Worm Whacker", grade = 1, points = 1, secret = true},

[195] = {name = "Yalahari of Power", grade = 1, points = 3, secret = false},

[196] = {name = "Yalahari of Wisdom", grade = 1, points = 3, secret = false},

[197] = {name = "You Don't Know Jack", grade = 1, points = 2, secret = true},

[198] = {name = "Zzztill Zzztanding!", grade = 1, points = 1, secret = false},

[199] = {name = "Alumni", grade = 2, points = 6, secret = false},

[200] = {name = "Annihilator", grade = 2, points = 5, secret = false},

[201] = {name = "Aristocrat", grade = 2, points = 4, secret = false},

[202] = {name = "Ashes to Dust", grade = 2, points = 4, secret = true},

[203] = {name = "Beak Doctor", grade = 2, points = 4, secret = false},

[204] = {name = "Brutal Politeness", grade = 2, points = 6, secret = false},

[205] = {name = "Castlemania", grade = 2, points = 5, secret = true},

[206] = {name = "Champion of Chazorai", grade = 2, points = 4, secret = false},

[207] = {name = "Chistin Bane", grade = 2, points = 5, secret = false},

[208] = {name = "Clay to Fame", grade = 2, points = 4, secret = true},

[209] = {name = "Culinary Master", grade = 2, points = 4, secret = false},

[210] = {name = "Deep Sea Diver", grade = 2, points = 4, secret = true},

[211] = {name = "Demonbane", grade = 2, points = 6, secret = false},

[212] = {name = "Devovorga's Nemesis", grade = 2, points = 5, secret = true},

[213] = {name = "Elite Hunter", points = 5, secret = false},

[214] = {name = "Exemplary Citizen", grade = 2, points = 4, secret = false},

[215] = {name = "Explorer", grade = 2, points = 4, secret = false},

[216] = {name = "Exterminator", grade = 2, points = 0, secret = false},

[217] = {name = "Follower of Azerus", grade = 2, points = 4, secret = false},

[218] = {name = "Follower of Palimuth", grade = 2, points = 4, secret = false},

[219] = {name = "Friend of the Apes", grade = 2, points = 4, secret = false},

[220] = {name = "Godslayer", grade = 2, points = 4, secret = false},

[221] = {name = "Gold Digger", points = 4, secret = true},

[222] = {name = "Golem in the Gears", grade = 2, points = 4, secret = false},

[223] = {name = "Green Thumb", grade = 2, points = 4, secret = true},

[224] = {name = "Guardian Downfall", grade = 2, points = 4, secret = false},

[225] = {name = "High Inquisitor", grade = 2, points = 5, secret = false},

[226] = {name = "High-Flyer", grade = 2, points = 4, secret = true},

[227] = {name = "Hive Blinder", grade = 2, points = 4, secret = false},

[228] = {name = "Honorary Witch", grade = 2, points = 4, secret = true},

[229] = {name = "Hunting with Style", grade = 2, points = 6, secret = false},

[230] = {name = "In Shining Armor", grade = 2, points = 6, secret = false},

[231] = {name = "Interior Decorator", grade = 2, points = 4, secret = true},

[232] = {name = "Jamjam", grade = 2, points = 5, secret = true},

[233] = {name = "Life on the Streets", grade = 2, points = 4, secret = false},

[234] = {name = "Lord of the Elements", grade = 2, points = 5, secret = false},

[235] = {name = "Lucky Devil", grade = 2, points = 4, secret = true},

[236] = {name = "Manic", grade = 2, points = 0, secret = false},

[237] = {name = "Marble Madness", grade = 2, points = 6, secret = true},

[238] = {name = "Master of the Nexus", grade = 2, points = 6, secret = false},

[239] = {name = "Master of War", grade = 2, points = 6, secret = false},

[240] = {name = "Master Thief", grade = 2, points = 4, secret = false},

[241] = {name = "Mystic Fabric Magic", grade = 2, points = 0, secret = false},

[242] = {name = "Navigational Error", grade = 2, points = 5, secret = true},

[243] = {name = "Nightmare Walker", grade = 2, points = 6, secret = false},

[244] = {name = "Of Wolves and Bears", grade = 2, points = 6, secret = false},

[245] = {name = "One Thousand and One", grade = 2, points = 6, secret = false},

[246] = {name = "Out in the Snowstorm", grade = 2, points = 4, secret = false},

[247] = {name = "Peazzekeeper", grade = 2, points = 6, secret = false},

[248] = {name = "Polisher", grade = 2, points = 4, secret = true},

[249] = {name = "Potion Addict", grade = 2, points = 4, secret = true},

[250] = {name = "Ritualist", grade = 2, points = 6, secret = false},

[251] = {name = "Ruthless", grade = 2, points = 5, secret = false},

[252] = {name = "Scourge of Death", grade = 2, points = 5, secret = true},

[253] = {name = "Ship's Kobold", grade = 2, points = 4, secret = true},

[254] = {name = "Skin-Deep", grade = 2, points = 4, secret = true},

[255] = {name = "Skull and Bones", grade = 2, points = 6, secret = false},

[256] = {name = "Spolium Profundis", grade = 2, points = 4, secret = false},

[257] = {name = "Stomach Ulcer", grade = 2, points = 4, secret = false},

[258] = {name = "Suppressor", grade = 2, points = 4, secret = false},

[259] = {name = "Swashbuckler", grade = 2, points = 6, secret = false},

[260] = {name = "Swift Death", grade = 2, points = 6, secret = false},

[261] = {name = "Top AVIN Agent", grade = 2, points = 4, secret = false},

[262] = {name = "Top CGB Agent", grade = 2, points = 4, secret = false},

[263] = {name = "Top TBI Agent", grade = 2, points = 4, secret = false},

[264] = {name = "True Lightbearer", grade = 2, points = 5, secret = true},

[265] = {name = "Turncoat", grade = 2, points = 4, secret = true},

[266] = {name = "Warlock", grade = 2, points = 6, secret = false},

[267] = {name = "Warlord of Svargrond", grade = 2, points = 5, secret = false},

[268] = {name = "Way of the Shaman", grade = 2, points = 6, secret = false},

[269] = {name = "Wild Warrior", grade = 2, points = 6, secret = false},

[270] = {name = "Dead Lord", grade = 3, points = 8, secret = true},

[271] = {name = "Herbicide", grade = 3, points = 8, secret = true},

[272] = {name = "Lord Protector", grade = 3, points = 8, secret = true},

[273] = {name = "Pwned a Lot of Fur", grade = 3, points = 8, secret = true},

[274] = {name = "Pwned All Fur", grade = 3, points = 8, secret = true},

[275] = {name = "Razing!", grade = 3, points = 7, secret = true}

}

ACHIEVEMENT_FIRST = 1

ACHIEVEMENT_LAST = #achievements

function getAchievementInfoById(id)

for k, v in pairs(achievements) do

if k == id then

local t = {}

t.id = k

for inf, it in pairs(v) do

t[inf] = it

end

return t

end

end

return false

end

function getAchievementInfoByName(name)

for k, v in pairs(achievements) do

if v.name:lower() == name:lower() then

local t = {}

t.id = k

for inf, it in pairs(v) do

t[inf] = it

end

return t

end

end

return false

end

function getSecretAchievements()

local t = {}

for k, v in pairs(achievements) do

if v.secret then

table.insert(t, k)

end

end

return t

end

function getPublicAchievements()

local t = {}

for k, v in ipairs(achivements) do

if not v.secret then

table.insert(t, k)

end

end

return t

end

function doPlayerAddAchievement(cid, ach, showMsg)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

if not hasAchievement(cid, achievement.id) then

doCreatureSetStorage(cid, achievement.name:lower(), 1)

if getCreatureStorage(cid, ACHIEVEMENTSPOINTS_BASE) < 0 then

doCreatureSetStorage(cid, ACHIEVEMENTSPOINTS_BASE, 0)

end

doCreatureSetStorage(cid, ACHIEVEMENTSPOINTS_BASE, getCreatureStorage(cid, ACHIEVEMENTSPOINTS_BASE) + achievement.points)

if showMsg then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Congratulations! You earned the achievement \"" .. achievement.name .. "\".")

end

end

return true

end

function doPlayerRemoveAchievement(cid, ach)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

if hasAchievement(cid, achievement.id) then

doCreatureSetStorage(cid, achievement.name:lower(), 0)

doCreatureSetStorage(cid, ACHIEVEMENTSPOINTS_BASE, getCreatureStorage(cid, ACHIEVEMENTSPOINTS_BASE) - achievement.points)

end

return true

end

function hasAchievement(cid, ach)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

if getCreatureStorage(cid, achievement.name:lower()) > 0 then

return true

end

return false

end

function doPlayerAddAllAchievements(cid, showMsg)

for k, v in pairs(achievements) do

if not hasAchievement(cid, k) then

doPlayerAddAchievement(cid, k, showMsg)

end

end

return true

end

function doPlayerRemoveAllAchievements(cid)

for k, v in pairs(achievements) do

if hasAchievement(cid, k) then

doPlayerRemoveAchievement(cid, k)

end

end

return true

end

function getPlayerSecretAchievements(cid)

local t = {}

for k, v in pairs(achievements) do

if hasAchievement(cid, k) and v.secret then

table.insert(t, k)

end

end

return t

end

function getPlayerPublicAchievements(cid)

local t = {}

for k, v in pairs(achievements) do

if hasAchievement(cid, k) and not v.secret then

table.insert(t, k)

end

end

return t

end

function getPlayerAchievements(cid)

local t = {}

for k, v in pairs(achievements) do

if hasAchievement(cid, k) then

table.insert(t, k)

end

end

return t

end

function isAchievementSecret(ach)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

return achievement.secret

end

Editado por alexxxxxxx (veja o histórico de edições)

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Postado
  • Autor

criar um lua lá na pasta lib e add

 

 

ACHIEVEMENTSPOINTS_BASE = "achievement_points"

achievements = {

[1] = {name = "Afraid of no Ghost!", grade = 1, points = 2, secret = false},

[2] = {name = "Allow Cookies?", grade = 1, points = 2, secret = false},

[3] = {name = "Allowance Collector", grade = 1, points = 2, secret = true},

[4] = {name = "Amateur Actor", grade = 1, points = 2, secret = false},

[5] = {name = "Animal Activist", grade = 1, points = 2, secret = false},

[6] = {name = "Arachnoise", grade = 1, points = 1, secret = false},

[7] = {name = "Archpostman", grade = 1, points = 3, secret = false},

[8] = {name = "Askarak Nemesis", grade = 1, points = 1, secret = true},

[9] = {name = "Baby Sitter", grade = 1, points = 1, secret = true},

[10] = {name = "Back from the Dead", grade = 1, points = 2, secret = false},

[11] = {name = "Back into the Abyss", grade = 1, points = 1, secret = false},

[12] = {name = "Backpack Tourist", grade = 1, points = 1, secret = true},

[13] = {name = "Bad Timing", grade = 1, points = 2, secret = true},

[14] = {name = "Bane of the Hive", grade = 1, points = 2, secret = false},

[15] = {name = "Banebringers' Bane", grade = 1, points = 2, secret = true},

[16] = {name = "Beach Tamer", grade = 1, points = 2, secret = false},

[17] = {name = "Bearhugger", grade = 1, points = 1, secret = false},

[18] = {name = "Beautiful Agony", grade = 1, points = 2, secret = false},

[19] = {name = "Berserker", grade = 1, points = 3, secret = false},

[20] = {name = "King of the Ring", grade = 1, points = 2, secret = false},

[21] = {name = "Blessed!", grade = 1, points = 2, secret = false},

[22] = {name = "Blood-Red Snapper", grade = 1, points = 1, secret = false},

[23] = {name = "Bluebarian", grade = 1, points = 2, secret = true},

[24] = {name = "Bone Brother", grade = 1, points = 1, secret = false},

[25] = {name = "Breaking the Ice", grade = 1, points = 1, secret = false},

[26] = {name = "Bunny Slipped", grade = 1, points = 2, secret = true},

[27] = {name = "Cake Conqueror", grade = 1, points = 1, secret = true},

[28] = {name = "Chest Robber", grade = 1, points = 1, secret = false},

[29] = {name = "Choking on Her Venom", grade = 1, points = 1, secret = false},

[30] = {name = "Chorister", grade = 1, points = 1, secret = false},

[31] = {name = "Clay Fighter", grade = 1, points = 3, secret = true},

[32] = {name = "Coccon of Doom", grade = 1, points = 3, secret = true},

[33] = {name = "Commitment Phobic", grade = 1, points = 2, secret = true},

[34] = {name = "Confusion", grade = 1, points = 0, secret = false},

[35] = {name = "Cookie Monster", grade = 1, points = 1, secret = true},

[36] = {name = "Crawling Death", grade = 1, points = 1, secret = false},

[37] = {name = "Cursed!", grade = 1, points = 3, secret = true},

[38] = {name = "Daring Trespasser", grade = 1, points = 3, secret = true},

[39] = {name = "Dark Voodoo Priest", grade = 1, points = 2, secret = true},

[40] = {name = "Dazzler", grade = 1, points = 3, secret = false},

[41] = {name = "Death Song", grade = 1, points = 3, secret = false},

[42] = {name = "Deer Hunt", grade = 1, points = 1, secret = true},

[43] = {name = "Demonic Barkeeper", grade = 1, points = 3, secret = false},

[44] = {name = "Depth Dwellers", grade = 1, points = 3, secret = false},

[45] = {name = "Desert Fisher", grade = 1, points = 1, secret = false},

[46] = {name = "Do not Disturb", grade = 1, points = 1, secret = true},

[47] = {name = "Doctor! Doctor!", grade = 1, points = 2, secret = true},

[48] = {name = "Dog Slitter", grade = 1, points = 1, secret = false},

[49] = {name = "Down the Drain", grade = 1, points = 2, secret = false},

[50] = {name = "Dream's Over", grade = 1, points = 1, secret = false},

[51] = {name = "Efreet Ally", grade = 1, points = 3, secret = false},

[52] = {name = "Enter zze Draken!", grade = 1, points = 2, secret = false},

[53] = {name = "Exquisite Taste", grade = 1, points = 2, secret = false},

[54] = {name = "Extreme Degustation", grade = 1, points = 2, secret = true},

[55] = {name = "Eye of the Deep", grade = 1, points = 1, secret = true},

[56] = {name = "Fire Devil", grade = 1, points = 3, secret = true},

[57] = {name = "Fire from the Earth", grade = 1, points = 2, secret = false},

[58] = {name = "Fire Lighter", grade = 1, points = 1, secret = true},

[59] = {name = "Firefighter", grade = 1, points = 2, secret = true},

[60] = {name = "Fireworks in the Sky", grade = 1, points = 2, secret = true},

[61] = {name = "Fool at Heart", grade = 1, points = 3, secret = false},

[62] = {name = "Fountain of Life", grade = 1, points = 1, secret = true},

[63] = {name = "Free Items!", grade = 1, points = 3, secret = true},

[64] = {name = "Gatherer", grade = 1, points = 2, secret = false},

[65] = {name = "Gem Cutter", grade = 1, points = 1, secret = true},

[66] = {name = "Ghost Sailor", grade = 1, points = 1, secret = true},

[67] = {name = "Ghostwhisperer", grade = 1, points = 3, secret = false},

[68] = {name = "Greenhorn", grade = 1, points = 2, secret = false},

[69] = {name = "Guard Killer", grade = 1, points = 2, secret = false},

[70] = {name = "Guinea Pig", grade = 1, points = 2, secret = false},

[71] = {name = "Happy Farmer", grade = 1, points = 1, secret = true},

[72] = {name = "Headache", grade = 1, points = 2, secret = false},

[73] = {name = "Heartburn", grade = 1, points = 3, secret = false},

[74] = {name = "Here, Fishy Fishy!", grade = 1, points = 1, secret = true},

[75] = {name = "Hickup", grade = 1, points = 2, secret = false},

[76] = {name = "Hidden Powers", grade = 1, points = 2, secret = false},

[77] = {name = "His True Face", grade = 1, points = 3, secret = true},

[78] = {name = "Hissing Downfall", grade = 1, points = 2, secret = false},

[79] = {name = "Hive Fighter", grade = 1, points = 1, secret = false},

[80] = {name = "Hive Infiltrator", grade = 1, points = 3, secret = false},

[81] = {name = "Hive War Veteran", grade = 1, points = 1, secret = false},

[82] = {name = "Homebrewed", grade = 1, points = 1, secret = true},

[83] = {name = "Honest Finder", grade = 1, points = 1, secret = false},

[84] = {name = "Honorary Barbarian", grade = 1, points = 1, secret = false},

[85] = {name = "Howly Silence", grade = 1, points = 1, secret = false},

[86] = {name = "Huntsman", grade = 1, points = 2, secret = false},

[87] = {name = "I Did My Part", grade = 1, points = 2, secret = true},

[88] = {name = "I Like it Fancy", grade = 1, points = 1, secret = true},

[89] = {name = "I Need a Hug", grade = 1, points = 2, secret = false},

[90] = {name = "Ice Harvester", grade = 1, points = 1, secret = false},

[91] = {name = "Ice Sculptor", grade = 1, points = 3, secret = true},

[92] = {name = "Invader of the Deep", grade = 1, points = 2, secret = true},

[93] = {name = "Jinx", grade = 1, points = 2, secret = true},

[94] = {name = "Joke's on You", grade = 1, points = 1, secret = true},

[95] = {name = "Just Cracked Me Up!", grade = 1, points = 2, secret = false},

[96] = {name = "Just in Time", grade = 1, points = 1, secret = false},

[97] = {name = "Kapow!", grade = 1, points = 1, secret = false},

[98] = {name = "Keeper of the Flame", grade = 1, points = 2, secret = true},

[99] = {name = "King Tibianus Fan", grade = 1, points = 3, secret = false},

[100] = {name = "Let the Sunshine In", grade = 1, points = 1, secret = true},

[101] = {name = "Loyal Subject", grade = 1, points = 1, secret = true},

[102] = {name = "Lucid Dreamer", grade = 1, points = 2, secret = false},

[103] = {name = "Mageslayer", grade = 1, points = 1, secret = true},

[104] = {name = "Make a Wish", grade = 1, points = 1, secret = true},

[105] = {name = "Marbeleous", grade = 1, points = 3, secret = true},

[106] = {name = "Marid Ally", grade = 1, points = 3, secret = false},

[107] = {name = "Masquerader", grade = 1, points = 3, secret = true},

[108] = {name = "Master Shapeshifter", grade = 1, points = 2, secret = true},

[109] = {name = "Mastermind", grade = 1, points = 3, secret = false},

[110] = {name = "Matchmaker", grade = 1, points = 1, secret = false},

[111] = {name = "Mathemagician", grade = 1, points = 1, secret = false},

[112] = {name = "Meat Skewer", grade = 1, points = 1, secret = false},

[113] = {name = "Merry Adventures", grade = 1, points = 2, secret = false},

[114] = {name = "Ministrel", grade = 1, points = 2, secret = true},

[115] = {name = "Minor Disturbance", grade = 1, points = 2, secret = false},

[116] = {name = "Mister Sandman", grade = 1, points = 2, secret = true},

[117] = {name = "Modest Guest", grade = 1, points = 1, secret = true},

[118] = {name = "Mutated Presents", grade = 1, points = 1, secret = true},

[119] = {name = "Natural Born Cowboy", grade = 1, points = 1, secret = true},

[120] = {name = "Natural Sweetener", grade = 1, points = 1, secret = true},

[121] = {name = "Nether Pirate", grade = 1, points = 3, secret = true},

[122] = {name = "Nightmare Knight", grade = 1, points = 1, secret = false},

[123] = {name = "No More Hiding", grade = 1, points = 1, secret = false},

[124] = {name = "Nomad Soul", grade = 1, points = 2, secret = true},

[125] = {name = "Nothing Can Stop Me", grade = 1, points = 1, secret = true},

[126] = {name = "Number of the Beast", grade = 1, points = 2, secret = false},

[127] = {name = "One Less", grade = 1, points = 2, secret = false},

[128] = {name = "Oops", grade = 1, points = 2, secret = true},

[129] = {name = "Party Animal", grade = 1, points = 1, secret = true},

[130] = {name = "Passionate Kisser", grade = 1, points = 3, secret = false},

[131] = {name = "Perfect Fool", grade = 1, points = 3, secret = false},

[132] = {name = "Petrologist", grade = 1, points = 2, secret = true},

[133] = {name = "Piece of Cake", grade = 1, points = 1, secret = false},

[134] = {name = "Pimple", grade = 1, points = 3, secret = false},

[135] = {name = "Planter", grade = 1, points = 2, secret = false},

[136] = {name = "Poet Laureate", grade = 1, points = 2, secret = true},

[137] = {name = "Preservationist", grade = 1, points = 1, secret = true},

[138] = {name = "Quick as a Turtle", grade = 1, points = 2, secret = true},

[139] = {name = "Recognised Trader", grade = 1, points = 3, secret = false},

[140] = {name = "Rock Me to Sleep", grade = 1, points = 1, secret = true},

[141] = {name = "Rocket in Pocket", grade = 1, points = 1, secret = true},

[142] = {name = "Rockstar", grade = 1, points = 3, secret = true},

[143] = {name = "Rollercoaster", grade = 1, points = 1, secret = false},

[144] = {name = "Rootless Behaviour", grade = 1, points = 1, secret = false},

[145] = {name = "Safely Stored Away", grade = 1, points = 2, secret = true},

[146] = {name = "Santa's Li'l Helper", grade = 1, points = 2, secret = true},

[147] = {name = "Scorched Flames", grade = 1, points = 1, secret = false},

[148] = {name = "Scrapper", grade = 1, points = 3, secret = false},

[149] = {name = "Sea Scout", grade = 1, points = 2, secret = false},

[150] = {name = "Secret Agent", grade = 1, points = 1, secret = false},

[151] = {name = "Shaburak Nemesis", grade = 1, points = 1, secret = true},

[152] = {name = "Sharpshooter", grade = 1, points = 3, secret = false},

[153] = {name = "Si, Ariki!", grade = 1, points = 1, secret = false},

[154] = {name = "Shell Seeker", grade = 1, points = 3, secret = true},

[155] = {name = "Silent Pet", grade = 1, points = 1, secret = true},

[156] = {name = "Slayer of Anmothra", grade = 1, points = 2, secret = true},

[157] = {name = "Slayer of Chikhaton", grade = 1, points = 2, secret = true},

[158] = {name = "Slayer of Irahsae", grade = 1, points = 2, secret = true},

[159] = {name = "Slayer of Phrodomo", grade = 1, points = 2, secret = true},

[160] = {name = "Slayer of Teneshpar", grade = 1, points = 2, secret = true},

[161] = {name = "Slim Chance", grade = 1, points = 1, secret = false},

[162] = {name = "Slimer", grade = 1, points = 1, secret = true},

[163] = {name = "Snowbunny", grade = 1, points = 2, secret = true},

[164] = {name = "Someone's Bored", grade = 1, points = 1, secret = true},

[165] = {name = "Something Smells", grade = 1, points = 1, secret = false},

[166] = {name = "Something's in There", grade = 1, points = 1, secret = true},

[167] = {name = "Spareribs for Dinner", grade = 1, points = 1, secret = false},

[168] = {name = "Spectral Traveler", grade = 1, points = 2, secret = true},

[169] = {name = "Steampunked", grade = 1, points = 2, secret = true},

[170] = {name = "Stepped on a Big Toe", grade = 1, points = 1, secret = false},

[171] = {name = "Supersitious", grade = 1, points = 2, secret = true},

[172] = {name = "Supplier", grade = 1, points = 3, secret = false},

[173] = {name = "Sweet Tooth", grade = 1, points = 2, secret = true},

[174] = {name = "Talented Dancer", grade = 1, points = 1, secret = false},

[175] = {name = "Teamplayer", grade = 1, points = 2, secret = true},

[176] = {name = "Territorial", grade = 1, points = 1, secret = true},

[177] = {name = "The Cake's the Truth", grade = 1, points = 1, secret = true},

[178] = {name = "The Day After", grade = 1, points = 2, secret = true},

[179] = {name = "The Drowned Sea God", grade = 1, points = 2, secret = false},

[180] = {name = "The Milkman", grade = 1, points = 2, secret = false},

[181] = {name = "The Serpent's Bride", grade = 1, points = 2, secret = false},

[182] = {name = "The Undertaker", grade = 1, points = 2, secret = true},

[183] = {name = "Torn Treasures", grade = 1, points = 1, secret = true},

[184] = {name = "Trail of the Ape God", grade = 1, points = 1, secret = true},

[185] = {name = "True Colors", grade = 1, points = 3, secret = true},

[186] = {name = "Truth Be Told", grade = 1, points = 2, secret = true},

[187] = {name = "Twisted Mutation", grade = 1, points = 1, secret = false},

[188] = {name = "Vanity", grade = 1, points = 3, secret = true},

[189] = {name = "Vive la Resistance", grade = 1, points = 2, secret = false},

[190] = {name = "Wayfarer", grade = 1, points = 3, secret = true},

[191] = {name = "Whistle-Blower", grade = 1, points = 1, secret = true},

[192] = {name = "Witches Lil' Helper", grade = 1, points = 1, secret = true},

[193] = {name = "With a Cherry on Top", grade = 1, points = 1, secret = true},

[194] = {name = "Worm Whacker", grade = 1, points = 1, secret = true},

[195] = {name = "Yalahari of Power", grade = 1, points = 3, secret = false},

[196] = {name = "Yalahari of Wisdom", grade = 1, points = 3, secret = false},

[197] = {name = "You Don't Know Jack", grade = 1, points = 2, secret = true},

[198] = {name = "Zzztill Zzztanding!", grade = 1, points = 1, secret = false},

[199] = {name = "Alumni", grade = 2, points = 6, secret = false},

[200] = {name = "Annihilator", grade = 2, points = 5, secret = false},

[201] = {name = "Aristocrat", grade = 2, points = 4, secret = false},

[202] = {name = "Ashes to Dust", grade = 2, points = 4, secret = true},

[203] = {name = "Beak Doctor", grade = 2, points = 4, secret = false},

[204] = {name = "Brutal Politeness", grade = 2, points = 6, secret = false},

[205] = {name = "Castlemania", grade = 2, points = 5, secret = true},

[206] = {name = "Champion of Chazorai", grade = 2, points = 4, secret = false},

[207] = {name = "Chistin Bane", grade = 2, points = 5, secret = false},

[208] = {name = "Clay to Fame", grade = 2, points = 4, secret = true},

[209] = {name = "Culinary Master", grade = 2, points = 4, secret = false},

[210] = {name = "Deep Sea Diver", grade = 2, points = 4, secret = true},

[211] = {name = "Demonbane", grade = 2, points = 6, secret = false},

[212] = {name = "Devovorga's Nemesis", grade = 2, points = 5, secret = true},

[213] = {name = "Elite Hunter", points = 5, secret = false},

[214] = {name = "Exemplary Citizen", grade = 2, points = 4, secret = false},

[215] = {name = "Explorer", grade = 2, points = 4, secret = false},

[216] = {name = "Exterminator", grade = 2, points = 0, secret = false},

[217] = {name = "Follower of Azerus", grade = 2, points = 4, secret = false},

[218] = {name = "Follower of Palimuth", grade = 2, points = 4, secret = false},

[219] = {name = "Friend of the Apes", grade = 2, points = 4, secret = false},

[220] = {name = "Godslayer", grade = 2, points = 4, secret = false},

[221] = {name = "Gold Digger", points = 4, secret = true},

[222] = {name = "Golem in the Gears", grade = 2, points = 4, secret = false},

[223] = {name = "Green Thumb", grade = 2, points = 4, secret = true},

[224] = {name = "Guardian Downfall", grade = 2, points = 4, secret = false},

[225] = {name = "High Inquisitor", grade = 2, points = 5, secret = false},

[226] = {name = "High-Flyer", grade = 2, points = 4, secret = true},

[227] = {name = "Hive Blinder", grade = 2, points = 4, secret = false},

[228] = {name = "Honorary Witch", grade = 2, points = 4, secret = true},

[229] = {name = "Hunting with Style", grade = 2, points = 6, secret = false},

[230] = {name = "In Shining Armor", grade = 2, points = 6, secret = false},

[231] = {name = "Interior Decorator", grade = 2, points = 4, secret = true},

[232] = {name = "Jamjam", grade = 2, points = 5, secret = true},

[233] = {name = "Life on the Streets", grade = 2, points = 4, secret = false},

[234] = {name = "Lord of the Elements", grade = 2, points = 5, secret = false},

[235] = {name = "Lucky Devil", grade = 2, points = 4, secret = true},

[236] = {name = "Manic", grade = 2, points = 0, secret = false},

[237] = {name = "Marble Madness", grade = 2, points = 6, secret = true},

[238] = {name = "Master of the Nexus", grade = 2, points = 6, secret = false},

[239] = {name = "Master of War", grade = 2, points = 6, secret = false},

[240] = {name = "Master Thief", grade = 2, points = 4, secret = false},

[241] = {name = "Mystic Fabric Magic", grade = 2, points = 0, secret = false},

[242] = {name = "Navigational Error", grade = 2, points = 5, secret = true},

[243] = {name = "Nightmare Walker", grade = 2, points = 6, secret = false},

[244] = {name = "Of Wolves and Bears", grade = 2, points = 6, secret = false},

[245] = {name = "One Thousand and One", grade = 2, points = 6, secret = false},

[246] = {name = "Out in the Snowstorm", grade = 2, points = 4, secret = false},

[247] = {name = "Peazzekeeper", grade = 2, points = 6, secret = false},

[248] = {name = "Polisher", grade = 2, points = 4, secret = true},

[249] = {name = "Potion Addict", grade = 2, points = 4, secret = true},

[250] = {name = "Ritualist", grade = 2, points = 6, secret = false},

[251] = {name = "Ruthless", grade = 2, points = 5, secret = false},

[252] = {name = "Scourge of Death", grade = 2, points = 5, secret = true},

[253] = {name = "Ship's Kobold", grade = 2, points = 4, secret = true},

[254] = {name = "Skin-Deep", grade = 2, points = 4, secret = true},

[255] = {name = "Skull and Bones", grade = 2, points = 6, secret = false},

[256] = {name = "Spolium Profundis", grade = 2, points = 4, secret = false},

[257] = {name = "Stomach Ulcer", grade = 2, points = 4, secret = false},

[258] = {name = "Suppressor", grade = 2, points = 4, secret = false},

[259] = {name = "Swashbuckler", grade = 2, points = 6, secret = false},

[260] = {name = "Swift Death", grade = 2, points = 6, secret = false},

[261] = {name = "Top AVIN Agent", grade = 2, points = 4, secret = false},

[262] = {name = "Top CGB Agent", grade = 2, points = 4, secret = false},

[263] = {name = "Top TBI Agent", grade = 2, points = 4, secret = false},

[264] = {name = "True Lightbearer", grade = 2, points = 5, secret = true},

[265] = {name = "Turncoat", grade = 2, points = 4, secret = true},

[266] = {name = "Warlock", grade = 2, points = 6, secret = false},

[267] = {name = "Warlord of Svargrond", grade = 2, points = 5, secret = false},

[268] = {name = "Way of the Shaman", grade = 2, points = 6, secret = false},

[269] = {name = "Wild Warrior", grade = 2, points = 6, secret = false},

[270] = {name = "Dead Lord", grade = 3, points = 8, secret = true},

[271] = {name = "Herbicide", grade = 3, points = 8, secret = true},

[272] = {name = "Lord Protector", grade = 3, points = 8, secret = true},

[273] = {name = "Pwned a Lot of Fur", grade = 3, points = 8, secret = true},

[274] = {name = "Pwned All Fur", grade = 3, points = 8, secret = true},

[275] = {name = "Razing!", grade = 3, points = 7, secret = true}

}

ACHIEVEMENT_FIRST = 1

ACHIEVEMENT_LAST = #achievements

function getAchievementInfoById(id)

for k, v in pairs(achievements) do

if k == id then

local t = {}

t.id = k

for inf, it in pairs(v) do

t[inf] = it

end

return t

end

end

return false

end

function getAchievementInfoByName(name)

for k, v in pairs(achievements) do

if v.name:lower() == name:lower() then

local t = {}

t.id = k

for inf, it in pairs(v) do

t[inf] = it

end

return t

end

end

return false

end

function getSecretAchievements()

local t = {}

for k, v in pairs(achievements) do

if v.secret then

table.insert(t, k)

end

end

return t

end

function getPublicAchievements()

local t = {}

for k, v in ipairs(achivements) do

if not v.secret then

table.insert(t, k)

end

end

return t

end

function doPlayerAddAchievement(cid, ach, showMsg)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

if not hasAchievement(cid, achievement.id) then

doCreatureSetStorage(cid, achievement.name:lower(), 1)

if getCreatureStorage(cid, ACHIEVEMENTSPOINTS_BASE) < 0 then

doCreatureSetStorage(cid, ACHIEVEMENTSPOINTS_BASE, 0)

end

doCreatureSetStorage(cid, ACHIEVEMENTSPOINTS_BASE, getCreatureStorage(cid, ACHIEVEMENTSPOINTS_BASE) + achievement.points)

if showMsg then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Congratulations! You earned the achievement \"" .. achievement.name .. "\".")

end

end

return true

end

function doPlayerRemoveAchievement(cid, ach)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

if hasAchievement(cid, achievement.id) then

doCreatureSetStorage(cid, achievement.name:lower(), 0)

doCreatureSetStorage(cid, ACHIEVEMENTSPOINTS_BASE, getCreatureStorage(cid, ACHIEVEMENTSPOINTS_BASE) - achievement.points)

end

return true

end

function hasAchievement(cid, ach)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

if getCreatureStorage(cid, achievement.name:lower()) > 0 then

return true

end

return false

end

function doPlayerAddAllAchievements(cid, showMsg)

for k, v in pairs(achievements) do

if not hasAchievement(cid, k) then

doPlayerAddAchievement(cid, k, showMsg)

end

end

return true

end

function doPlayerRemoveAllAchievements(cid)

for k, v in pairs(achievements) do

if hasAchievement(cid, k) then

doPlayerRemoveAchievement(cid, k)

end

end

return true

end

function getPlayerSecretAchievements(cid)

local t = {}

for k, v in pairs(achievements) do

if hasAchievement(cid, k) and v.secret then

table.insert(t, k)

end

end

return t

end

function getPlayerPublicAchievements(cid)

local t = {}

for k, v in pairs(achievements) do

if hasAchievement(cid, k) and not v.secret then

table.insert(t, k)

end

end

return t

end

function getPlayerAchievements(cid)

local t = {}

for k, v in pairs(achievements) do

if hasAchievement(cid, k) then

table.insert(t, k)

end

end

return t

end

function isAchievementSecret(ach)

local achievement

if isNumber(ach) then

achievement = getAchievementInfoById(ach)

else

achievement = getAchievementInfoByName(ach)

end

if not achievement then return print("[!] -> Invalid achievement \"" .. ach .. "\".") and false end

return achievement.secret

end

já uso essa script ^^

adicionei o seguinte em global.lua

function isNumber(str)
	return tonumber(str) ~= nil
end

dai ao dar /addach Admin,1 da o mesmo erro de função, porém agora assim. [C] in function 'addarchievements'

up?

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo