[LIB]Item2, PC2 (set_attr, get_attr, equip, set_level und mehr)

09/29/2013 17:10 iMer#1
Hey,
Lib enthält folgende Funktionen/Lib contains the following functions:
Code:
# function(arguments) -- return type - notes
  item2.get_wearflag() -- int
  item2.is_wearflag(WEAR_FLAG) -- bool
  item2.set_attr(index, type, value) -- bool
  item2.get_attr(index) -- int, int
  item2.equip(slot) -- bool - equips the current item to the wearslot "slot"
  pc2.give_or_drop_item_and_select(int vnum||string item_name) -- official function
  pc2.set_level(level) -- bool - requires relog/teleport
Download: [Only registered and activated users can see links. Click Here To Register...]
libstdc++.so.6: [Only registered and activated users can see links. Click Here To Register...]

Oh yeah, and the lib is obviously 34083 only

iMer
09/29/2013 17:14 Metin2 Team#2
Thank you.

it's a nice release you are the best iMer.
09/29/2013 17:26 .Xilent#3
Danke sehr! pc2.set_level(level) -- bool - requires relog/teleport < Hab lange nach der Funktion gesucht ^.^
09/29/2013 17:28 Stαgє6#4
Kann man sicherlich gut gebrauchen wird einigen weiterhelfen,
09/29/2013 17:43 thespeedyy#5
ok und was bringen die?
item2.get_wearflag() -- ???
item2.is_wearflag(WEAR_FLAG) -- ???
item2.set_attr(index, type, value) -- setzt ein boni???
item2.get_attr(index) -- prüft ein boni???
item2.equip(slot) --überpüft ein slot im eq???
pc2.give_or_drop_item_and_select(int vnum||string item_name) -- ka?!
pc2.set_level(level) -- bool - besserer set lvl? geht damit auch runter leveln?
09/29/2013 17:52 iMer#6
Quote:
Originally Posted by thespeedyy View Post
ok und was bringen die?
item2.get_wearflag() -- ???
item2.is_wearflag(WEAR_FLAG) -- ???
item2.set_attr(index, type, value) -- setzt ein boni???
item2.get_attr(index) -- prüft ein boni???
item2.equip(slot) --überpüft ein slot im eq???
pc2.give_or_drop_item_and_select(int vnum||string item_name) -- ka?!
pc2.set_level(level) -- bool - besserer set lvl? geht damit auch runter leveln?
get_wearflag Gibt die "wearflag" zurück
is_wearflag Überprüft ob "WEAR_FLAG" in der wearflag enthalten ist, weil ich kp habe wie ich bitfunktionen in lua benutze - ich benutz es um zu prüfen ob nen Stein in Waffe oder Rüstung geht.
set_attr Setzt nen Bonus
get_attr Selbsterklärend
equip Rüstet nen Item aus - falls du per Quest z.b. ne waffe anziehen willst kannst du das tun
give_or_drop_item_and_select wie der Name sagt: Er gibt dir das Item und wenn kein Platz im Inventar ist Drop er es, und er wählt es als aktuell aktives Item aus.
set_level - Yep, Kannst das Level von nem Char setzen
09/29/2013 19:22 xCPx#7
iMer?
Warum das:

Quote:
pc2.set_level(level) -- bool - requires relog/teleport

warum hast du nicht einfach die do_advance func übernommen?
Dann geht das allesamt ohne relog/teleport
09/29/2013 19:24 miguelmig#8
Nice job iMer :)
09/29/2013 19:25 #SoNiice#9
Ich vermisse irgendwie dann noch eine 'Equip-Auszieh-Funktion' :>
09/29/2013 20:12 Legend2007#10
Nehme mal an das die lib für die r34083 ist, oder?

Edit: Lesen bildet, sorry. lol
09/29/2013 20:34 FlAT!K#11
thanks for the upload! :d
09/29/2013 20:59 .HC'Destrox#12
Quote:
Originally Posted by Hühnchenkopf View Post
Ich vermisse irgendwie dann noch eine 'Equip-Auszieh-Funktion' :>
Code:
function pc.unequip_item(item_cell)
	if item.select_cell(tonumber(item_cell)) then
		local vnum = item.get_vnum()
		local attr = {{item2.get_attr(0)}, {item2.get_attr(1)}, {item2.get_attr(2)}, {item2.get_attr(3)}, {item2.get_attr(4)}, {item2.get_attr(5)}, {item2.get_attr(6)}}
		local socket = {item.get_socket(0), item.get_socket(1), item.get_socket(2)}
		item.remove()
		pc2.give_or_drop_item_and_select(vnum)
		for i = 1, table.getn(attr) do
			if tonumber(attr[i][1]) > 0
				item.set_attr(i-1, attr[i][1], attr[i][2])
			end
		end
		for i = 1, table.getn(socket) do
			if tonumber(socket[i]) > 0 then
				item.set_socket(i-1, socket[i])
			end
		end
		return true
	end
	return false
end
Win.
09/29/2013 21:06 thespeedyy#13
wie kann ich nochmal mehrere libs einfügen?
09/29/2013 21:08 iMer#14
Quote:
Originally Posted by xCPx View Post
iMer?
Warum das:




warum hast du nicht einfach die do_advance func übernommen?
Dann geht das allesamt ohne relog/teleport
oops.
Hab ich nicht dran gedacht - bin einfach davon ausgegangen dass es nicht ohne weiteres geht, weil das vorher ja auch niemand gemacht hat.
Wird geändert.. irgendwann..

Quote:
Originally Posted by Hühnchenkopf View Post
Ich vermisse irgendwie dann noch eine 'Equip-Auszieh-Funktion' :>
Wird eingefügt.. irgendwann..
09/29/2013 21:31 DaDrag0n#15
Can i use it for 2089 aswell ? Or can u make a verios for 2089 ? I will much apreciate it.
King Regards.