avertuss 48 Posted August 5, 2017 Share Posted August 5, 2017 (edited) Hi. I have when kill with npc.is_pc() and pc.get_map_index() == 41 begin local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") local namet = pc.get_name() local levt = pc.get_level() local vid = npc.get_vid() local old_pc = pc.select(vid) if old_pc != 0 then local lev = pc.get_level() local name = pc.get_name() query("UPDATE player.player_arena SET deaths = deaths+1 where name = '"..name.."';") pc.select(old_pc) if lev == levt then pkt = 2 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points1 = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("2 points") chat("You have: "..points1.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") elseif lev > levt then pkt = 3 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points1 = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("3 points") chat("You have: "..points1.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") elseif lev < levt and lev >= levt-5 then pkt = 1 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points1 = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("1 point") chat("You have: "..points1.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") else chat("0 points") end end end My player_arena table looks like I don't know why but query doesn't work, i have still empty table. In syserr i have attempt to concatenate local `points1' (a nil value) Edited August 20, 2022 by Metin2 Dev Core X - External 2 Internal Link to comment Share on other sites More sharing options...
Active Member enzi 846 Posted August 5, 2017 Active Member Share Posted August 5, 2017 Do you try it like that? Spoiler when kill with npc.is_pc() and pc.get_map_index() == 41 begin local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") local namet = pc.get_name() local levt = pc.get_level() local vid = npc.get_vid() local old_pc = pc.select(vid) if old_pc != 0 then local lev = pc.get_level() local name = pc.get_name() query("UPDATE player.player_arena SET deaths = deaths+1 where name = '"..name.."';") pc.select(old_pc) if lev == levt then pkt = 2 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("2 points") chat("You have: "..points.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") elseif lev > levt then pkt = 3 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("3 points") chat("You have: "..points.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") elseif lev < levt and lev >= levt-5 then pkt = 1 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("1 point") chat("You have: "..points.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") else chat("0 points") end end end Link to comment Share on other sites More sharing options...
avertuss 48 Posted August 5, 2017 Author Share Posted August 5, 2017 2 godziny temu, enzi napisał: Do you try it like that? Odkryj ukrytą treść when kill with npc.is_pc() and pc.get_map_index() == 41 begin local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") local namet = pc.get_name() local levt = pc.get_level() local vid = npc.get_vid() local old_pc = pc.select(vid) if old_pc != 0 then local lev = pc.get_level() local name = pc.get_name() query("UPDATE player.player_arena SET deaths = deaths+1 where name = '"..name.."';") pc.select(old_pc) if lev == levt then pkt = 2 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("2 points") chat("You have: "..points.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") elseif lev > levt then pkt = 3 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("3 points") chat("You have: "..points.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") elseif lev < levt and lev >= levt-5 then pkt = 1 query("UPDATE player.player_arena SET points = points+"..pkt.." WHERE name = '"..namet.."';") local points = query("SELECT points from player.player_arena WHERE name = '"..pc.get_name().."';") chat("1 point") chat("You have: "..points.." points.") query("UPDATE player.player_arena SET kills = kills+1 WHERE name = '"..namet.."';") else chat("0 points") end end end Still the same. I think that it doesn't work because i don't have query to add nickname to name column but i'm not sure. Link to comment Share on other sites More sharing options...
Root 59 Posted August 5, 2017 Share Posted August 5, 2017 check this topic and try stuff from there Spoiler Link to comment Share on other sites More sharing options...
avertuss 48 Posted August 5, 2017 Author Share Posted August 5, 2017 17 minut temu, Root napisał: check this topic and try stuff from there Ukryj treść I'm not sure. That quest in original version works on player.player table. I want move these points to player_arena but as you see it doesn't work. Imo i need one more argument in query or something to add nickname to new table. Link to comment Share on other sites More sharing options...
avertuss 48 Posted August 6, 2017 Author Share Posted August 6, 2017 f5 ;/ Link to comment Share on other sites More sharing options...
Den 46 Posted August 6, 2017 Share Posted August 6, 2017 Maybe instead of UPDATE use REPLACE INTO somewhere? REPLACE INTO makes a new row if it didn't find one. Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now