Archiv verlassen und diese Seite im Standarddesign anzeigen : Namen mit table vergleichen
ich habe das problem, dass ich keinen elend lagen string will sondern eine table, nur scheitere ich dann am auslesen :roll:
local buddy = string.Explode( "\n", file.Read( "buddylist.txt" ))
...
if ( table.HasValue( buddy, player:Name() ) ) then
--if ( string.find( player:Name(), buddy )== nil ) then
...
buddylist.txt
Axe
Roxas
Greekguy
das erste geht, das 2te nicht, jedoch muss beim ersten der name 100% uebereinstimmen, was ich aber nicht will...
ist es moeglich den inhalt der table via string.find mit dem namen zu vergleichen ?
for k,v in pairs(buddy) do
if string.find(v,player:Name()) == 1 then
--COOKIES ARE AWESOME
end
end
Ist im Forum geschrieben,sollte aber gehn.
nein geht leider nicht :/
€dit:
for _,player in pairs(player.GetAll()) do
for k,v in pairs(buddy) do
if (!string.find(v,player:Name())) then
....
end
end
end
buddies soll er ignorieren, alle anderen player aber betreffen...
oder ist es einfacher das ganze mit einer convar zu machen? :S
€dit: ich bin soweit gekommen, das ich sagen kann das es an der load methode den fehler gibt :/
wenn ich mache
local buddy = {"Joey"}
dann funktioniert es, aber wenn ich
local buddy = string.Explode( "\n", file.Read( "buddylist.txt" ))
mache, dann geht nix mehr :3
concommand.Add("testprint", function()
for k,v in pairs(whiteppl) do print(k,v) end
end)
es printet jedes ma die selbe table :/
seltsamer weiße funktioniert das ganze nur, wenn in der buddylist nur ein name steht, sobald mehrere da stehen, geht nix mehr? o.O
sry fuer doublepost, aber kann mir keiner helfen ?
humanexecuter
27.07.2008, 16:16
concommand.Add("testprint", function()
for k,v in pairs(whiteppl) do print(k,v) end
end)
Ich war der Meinung das man das in einer Reihe schreiben muss also so:
concommand.Add("testprint", function() for k,v in pairs(whiteppl) do print(k,v) end)
wenn nicht dann sorry >,<
wtfbuddlist = {}
wtfbuddylist.friends = {
"brot",
"autoreifen",
"klappstuhl",
"usw"
}
function wtfbuddylist.isFriend(arg)
for _, v in pairs(wtfbuddylist.friends) do
if (string.find(arg, v) ~= nil) then
return true
end
end
return false
end
local function aimbot() --funktion, um ein neues ziel fuer 'nen lua-aimbot zu suchen
local pos = LocalPlayer():GetPos()
local t = {0,0}
for _,ent in pairs(ents.GetAll()) do
if (GetAllow(ent) == true and wtfbuddylist.isFriend(ent:Name())) then
local tpos = ent:GetPos()
local dist = (tpos-pos):Length()
if (dist < t[2] or t[1] == 0) then
t = {ent, dist}
end
end
end
return t[1]
end
Ich war der Meinung das man das in einer Reihe schreiben muss also so:
concommand.Add("testprint", function() for k,v in pairs(whiteppl) do print(k,v) end)
wenn nicht dann sorry >,<
Kann man auch in mehreren reihen machen
Powered by vBulletin® Version 4.2.2 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.