Ergebnis 1 bis 6 von 6

Thema: Namen mit table vergleichen

  1. #1

    Standard Namen mit table vergleichen

    ich habe das problem, dass ich keinen elend lagen string will sondern eine table, nur scheitere ich dann am auslesen

    Lua Code:
    1. local buddy = string.Explode( "\n", file.Read( "buddylist.txt" ))
    2. ...
    3. if ( table.HasValue( buddy, player:Name() ) ) then
    4. --if ( string.find( player:Name(), buddy )== nil ) then
    5. ...

    buddylist.txt
    Code:
    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 ?
    Zitat Zitat von Stargate75
    ich weis das war ich scheise was ich gemacht aber aber das ist das einzige forum wo cool ist und auf deutsch

  2. #2

    Standard AW: Namen mit table vergleichen

    Lua Code:
    1. for k,v in pairs(buddy) do
    2.   if string.find(v,player:Name()) == 1 then
    3.   --COOKIES ARE AWESOME
    4.   end
    5. end

    Ist im Forum geschrieben,sollte aber gehn.

  3. #3

    Standard AW: Namen mit table vergleichen

    nein geht leider nicht :/

    €dit:
    Lua Code:
    1. for _,player in pairs(player.GetAll()) do
    2. 	for k,v in pairs(buddy) do  
    3. 		if (!string.find(v,player:Name())) then	
    4. 		....
    5. 		end
    6. 	end
    7. 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
    Lua Code:
    1. local buddy = {"Joey"}
    dann funktioniert es, aber wenn ich
    Lua Code:
    1. local buddy = string.Explode( "\n", file.Read( "buddylist.txt" ))
    mache, dann geht nix mehr :3

    Lua Code:
    1. concommand.Add("testprint", function()
    2. 	for k,v in pairs(whiteppl) do print(k,v) end
    3. 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
    Geändert von Stoned (26.07.2008 um 14:03 Uhr)
    Zitat Zitat von Stargate75
    ich weis das war ich scheise was ich gemacht aber aber das ist das einzige forum wo cool ist und auf deutsch

  4. #4

    Standard AW: Namen mit table vergleichen

    sry fuer doublepost, aber kann mir keiner helfen ?
    Zitat Zitat von Stargate75
    ich weis das war ich scheise was ich gemacht aber aber das ist das einzige forum wo cool ist und auf deutsch

  5. #5

    Standard AW: Namen mit table vergleichen

    Zitat Zitat von Stoned
    Lua Code:
    1. concommand.Add("testprint", function()
    2. 	for k,v in pairs(whiteppl) do print(k,v) end
    3. end)
    Ich war der Meinung das man das in einer Reihe schreiben muss also so:
    Lua Code:
    1. concommand.Add("testprint", function() for k,v in pairs(whiteppl) do print(k,v) end)
    wenn nicht dann sorry >,<

    Zitat Zitat von Hunter
    Hat der...'nen Hitlerbart ! ?
    LoL

  6. #6
    Avatar von Lucid
    Registriert seit
    15.12.2006

    Standard AW: Namen mit table vergleichen

    Lua Code:
    1. wtfbuddlist = {}
    2. wtfbuddylist.friends = {
    3. 	"brot", 
    4. 	"autoreifen",
    5. 	 "klappstuhl",
    6. 	 "usw"
    7. }
    8.  
    9. function wtfbuddylist.isFriend(arg)
    10. 	for _, v in pairs(wtfbuddylist.friends) do
    11. 		if (string.find(arg, v) ~= nil) then
    12. 			return true
    13. 		end
    14. 	end
    15. 	return false
    16. end

    Lua Code:
    1. local function aimbot() --funktion, um ein neues ziel fuer 'nen lua-aimbot zu suchen
    2. 	local pos = LocalPlayer():GetPos()
    3. 	local t = {0,0}
    4. 	for _,ent in pairs(ents.GetAll()) do
    5. 		if (GetAllow(ent) == true and wtfbuddylist.isFriend(ent:Name())) then
    6. 			local tpos = ent:GetPos()
    7. 			local dist = (tpos-pos):Length()
    8. 			if (dist < t[2] or t[1] == 0) then
    9. 				t = {ent, dist}
    10. 			end
    11. 		end
    12. 	end
    13. 	return t[1]
    14. end

    Zitat Zitat von humanexecuter Beitrag anzeigen
    Ich war der Meinung das man das in einer Reihe schreiben muss also so:
    Lua Code:
    1. 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
    Geändert von Lucid (27.07.2008 um 16:44 Uhr) Grund: Doppelposts zusammengefügt

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •