--[=[ d888b db db d888888b .d888b. db db db .d8b. 88' Y8b 88 88 `88' VP `8D 88 88 88 d8' `8b 88 88 88 88 odD' 88 88 88 88ooo88 88 ooo 88 88 88 .88' 88 88 88 88~~~88 88. ~8~ 88b d88 .88. j88. 88booo. 88b d88 88 88 @uniquadev Y888P ~Y8888P' Y888888P 888888D Y88888P ~Y8888P' YP YP CONVERTER OK-13 SÜPER DEV TÜRKÇE AI - TEK PARÇA 500+ KELİME, 100+ KONU, LUA UZMANI ]=] local LMG2L = {}; -- SCREEN GUI LMG2L["ScreenGui_1"] = Instance.new("ScreenGui", game:GetService("Players").LocalPlayer:WaitForChild("PlayerGui")); LMG2L["ScreenGui_1"]["ZIndexBehavior"] = Enum.ZIndexBehavior.Sibling; -- ANA FRAME LMG2L["Frame_2"] = Instance.new("Frame", LMG2L["ScreenGui_1"]); LMG2L["Frame_2"]["BorderSizePixel"] = 0; LMG2L["Frame_2"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255); LMG2L["Frame_2"]["Size"] = UDim2.new(0, 502, 0, 328); LMG2L["Frame_2"]["Position"] = UDim2.new(0, 154, 0, 0); -- KÖŞELER LMG2L["UICorner_3"] = Instance.new("UICorner", LMG2L["Frame_2"]); LMG2L["UIStroke_4"] = Instance.new("UIStroke", LMG2L["Frame_2"]); -- ARKA PLAN RESİM LMG2L["ImageLabel_5"] = Instance.new("ImageLabel", LMG2L["Frame_2"]); LMG2L["ImageLabel_5"]["BorderSizePixel"] = 0; LMG2L["ImageLabel_5"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255); LMG2L["ImageLabel_5"]["Image"] = [[rbxassetid://92395758083316]]; LMG2L["ImageLabel_5"]["Size"] = UDim2.new(0, 504, 0, 332); LMG2L["ImageLabel_5"]["Position"] = UDim2.new(0, -2, 0, -4); LMG2L["UICorner_6"] = Instance.new("UICorner", LMG2L["ImageLabel_5"]); LMG2L["UIStroke_7"] = Instance.new("UIStroke", LMG2L["ImageLabel_5"]); -- BAŞLIK LMG2L["TextLabel_8"] = Instance.new("TextLabel", LMG2L["ImageLabel_5"]); LMG2L["TextLabel_8"]["BorderSizePixel"] = 0; LMG2L["TextLabel_8"]["TextSize"] = 24; LMG2L["TextLabel_8"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255); LMG2L["TextLabel_8"]["FontFace"] = Font.new([[rbxasset://fonts/families/IndieFlower.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal); LMG2L["TextLabel_8"]["BackgroundTransparency"] = 1; LMG2L["TextLabel_8"]["Size"] = UDim2.new(0, 100, 0, 20); LMG2L["TextLabel_8"]["Text"] = [[OK-13 Aİ - 1 QUEST=3M LT WATER]]; LMG2L["TextLabel_8"]["Position"] = UDim2.new(0, 92, 0, 2); -- SCROLLING FRAME (SOHBET ALANI) LMG2L["ScrollingFrame_9"] = Instance.new("ScrollingFrame", LMG2L["ImageLabel_5"]); LMG2L["ScrollingFrame_9"]["BorderSizePixel"] = 0; LMG2L["ScrollingFrame_9"]["BackgroundColor3"] = Color3.fromRGB(6, 6, 6); LMG2L["ScrollingFrame_9"]["Size"] = UDim2.new(0, 382, 0, 256); LMG2L["ScrollingFrame_9"]["Position"] = UDim2.new(0, 104, 0, 28); LMG2L["ScrollingFrame_9"]["BackgroundTransparency"] = 0.9; LMG2L["ScrollingFrame_9"]["ScrollBarThickness"] = 6; LMG2L["ScrollingFrame_9"]["CanvasSize"] = UDim2.new(0, 0, 0, 0); LMG2L["ScrollingFrame_9"]["AutomaticCanvasSize"] = Enum.AutomaticSize.Y; LMG2L["UIStroke_a"] = Instance.new("UIStroke", LMG2L["ScrollingFrame_9"]); LMG2L["UIStroke_a"]["ApplyStrokeMode"] = Enum.ApplyStrokeMode.Border; LMG2L["UIStroke_a"]["Thickness"] = 0.4; LMG2L["UICorner_b"] = Instance.new("UICorner", LMG2L["ScrollingFrame_9"]); -- PROFİL RESMİ LMG2L["ImageLabel_10"] = Instance.new("ImageLabel", LMG2L["ImageLabel_5"]); LMG2L["ImageLabel_10"]["BorderSizePixel"] = 0; LMG2L["ImageLabel_10"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255); LMG2L["ImageLabel_10"]["Image"] = [[rbxassetid://115982280618058]]; LMG2L["ImageLabel_10"]["Size"] = UDim2.new(0, 82, 0, 82); LMG2L["ImageLabel_10"]["Position"] = UDim2.new(0, 10, 0, 26); LMG2L["UICorner_11"] = Instance.new("UICorner", LMG2L["ImageLabel_10"]); LMG2L["UICorner_11"]["CornerRadius"] = UDim.new(1, 0); LMG2L["TextLabel_12"] = Instance.new("TextLabel", LMG2L["ImageLabel_10"]); LMG2L["TextLabel_12"]["BorderSizePixel"] = 0; LMG2L["TextLabel_12"]["TextSize"] = 12; LMG2L["TextLabel_12"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255); LMG2L["TextLabel_12"]["FontFace"] = Font.new([[rbxasset://fonts/families/Ubuntu.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal); LMG2L["TextLabel_12"]["BackgroundTransparency"] = 1; LMG2L["TextLabel_12"]["Size"] = UDim2.new(0, 100, 0, 20); LMG2L["TextLabel_12"]["Text"] = [[Your Best Friend - AI]]; LMG2L["TextLabel_12"]["Position"] = UDim2.new(0, -10, 0, 82); -- TEXTBOX (MESAJ YAZMA ALANI) LMG2L["TextBox_13"] = Instance.new("TextBox", LMG2L["ImageLabel_5"]); LMG2L["TextBox_13"]["BorderSizePixel"] = 0; LMG2L["TextBox_13"]["BackgroundColor3"] = Color3.fromRGB(253, 151, 144); LMG2L["TextBox_13"]["Size"] = UDim2.new(0, 396, 0, 34); LMG2L["TextBox_13"]["Position"] = UDim2.new(0, 102, 0, 292); LMG2L["TextBox_13"]["Text"] = [[Mesajınızı yazın...]]; LMG2L["TextBox_13"]["TextColor3"] = Color3.fromRGB(0, 0, 0); LMG2L["TextBox_13"]["BackgroundTransparency"] = 0.7; LMG2L["UICorner_14"] = Instance.new("UICorner", LMG2L["TextBox_13"]); LMG2L["UICorner_14"]["CornerRadius"] = UDim.new(0, 5); LMG2L["UIStroke_15"] = Instance.new("UIStroke", LMG2L["TextBox_13"]); LMG2L["UIStroke_15"]["ApplyStrokeMode"] = Enum.ApplyStrokeMode.Border; LMG2L["UIStroke_15"]["Thickness"] = 0.7; -- GÖNDER BUTONU LMG2L["TextButton_16"] = Instance.new("TextButton", LMG2L["ImageLabel_5"]); LMG2L["TextButton_16"]["BorderSizePixel"] = 0; LMG2L["TextButton_16"]["BackgroundColor3"] = Color3.fromRGB(76, 175, 80); LMG2L["TextButton_16"]["Size"] = UDim2.new(0, 72, 0, 34); LMG2L["TextButton_16"]["Position"] = UDim2.new(0, 500, 0, 292); LMG2L["TextButton_16"]["Text"] = [[GÖNDER]]; LMG2L["TextButton_16"]["TextColor3"] = Color3.fromRGB(255, 255, 255); LMG2L["TextButton_16"]["Font"] = Enum.Font.GothamBold; LMG2L["TextButton_16"]["TextSize"] = 14; LMG2L["UICorner_17"] = Instance.new("UICorner", LMG2L["TextButton_16"]); LMG2L["UIStroke_18"] = Instance.new("UIStroke", LMG2L["TextButton_16"]); LMG2L["UIStroke_18"]["ApplyStrokeMode"] = Enum.ApplyStrokeMode.Border; LMG2L["UIStroke_18"]["Thickness"] = 0.6; -- KAPATMA BUTONU LMG2L["TextButton_19"] = Instance.new("TextButton", LMG2L["ImageLabel_5"]); LMG2L["TextButton_19"]["BorderSizePixel"] = 0; LMG2L["TextButton_19"]["TextSize"] = 18; LMG2L["TextButton_19"]["BackgroundColor3"] = Color3.fromRGB(255, 80, 80); LMG2L["TextButton_19"]["BackgroundTransparency"] = 0.3; LMG2L["TextButton_19"]["Size"] = UDim2.new(0, 30, 0, 30); LMG2L["TextButton_19"]["Text"] = [[X]]; LMG2L["TextButton_19"]["TextColor3"] = Color3.fromRGB(255, 255, 255); LMG2L["TextButton_19"]["Position"] = UDim2.new(0, 470, 0, 2); LMG2L["UIStroke_1a"] = Instance.new("UIStroke", LMG2L["TextButton_19"]); LMG2L["UIStroke_1a"]["ApplyStrokeMode"] = Enum.ApplyStrokeMode.Border; LMG2L["UIStroke_1a"]["Thickness"] = 0.2; -- ==================== DEV TÜRKÇE AI VERİTABANI ==================== local aiDatabase = { -- LUA VE SCRIPT ÖZEL (70+ cevap) { keywords = {"lua", "lua nedir", "lua dili"}, response = [[Lua, hafif ve hızlı bir programlama dilidir! Roblox'ta oyun yapmak için kullanılır. Özellikleri: • Yorumlanan dil (derlenmez) • Dinamik tip sistemi • Tablo tabanlı • Hafızada az yer kaplar • Kolay öğrenilir Roblox dışında oyun motorlarında, embedded sistemlerde de kullanılır!]] }, { keywords = {"roblox lua", "luau", "rbx lua"}, response = [[Roblox Lua (Luau), normal Lua'nın geliştirilmiş versiyonudur! Roblox'a özel eklemeler: • Instance'lar (Part, Frame, Tool) • Events (Connect, Wait) • Services (Players, Workspace) • DataTypes (Vector3, CFrame, Color3) • Type checking ve optimizasyonlar Örnek kod: local part = Instance.new("Part") part.Parent = workspace part.BrickColor = BrickColor.new("Bright red") part.Size = Vector3.new(4, 1, 2)]] }, { keywords = {"değişken", "variable", "local"}, response = [[Değişkenler, veri saklamak için kullanılır! local sayi = 10 -- sayı local yazi = "merhaba" -- yazı (string) local mantik = true -- boolean (true/false) local tablo = {} -- tablo (table) -- Global değişken (tavsiye edilmez): sayi = 10 -- Local değişken (tavsiye edilir): local sayi = 10 Değişken isimleri: harf veya _ ile başlamalı, rakamla başlayamaz!]] }, { keywords = {"fonksiyon", "function", "metod"}, response = [[Fonksiyonlar, tekrar kullanılabilir kod bloklarıdır! -- Basit fonksiyon: function selamVer(isim) print("Merhaba " .. isim) end -- Return değeri olan: function topla(a, b) return a + b end -- Event fonksiyonu: button.MouseButton1Click:Connect(function() print("Butona tıklandı!") end) -- Anonymous fonksiyon: local carp = function(a, b) return a * b end]] }, { keywords = {"tablo", "table", "dizi"}, response = [[Tablolar, Lua'nın en güçlü özelliğidir! -- Dizi (array) gibi: local meyveler = {"elma", "armut", "muz"} print(meyveler[1]) -- elma (index 1'den başlar!) -- Sözlük (dictionary) gibi: local ogrenci = { ad = "Ali", yas = 15, sinif = "9/A" } print(ogrenci.ad) -- Ali print(ogrenci["yas"]) -- 15 -- İç içe tablolar: local oyuncular = { {isim = "Ali", skor = 100, level = 5}, {isim = "Veli", skor = 200, level = 10} } -- Tablo fonksiyonları: table.insert(meyveler, "çilek") -- Ekle table.remove(meyveler, 1) -- Sil table.sort(meyveler) -- Sırala]] }, { keywords = {"döngü", "loop", "for", "while"}, response = [[Döngüler, işlemleri tekrarlamak için: -- For döngüsü (1'den 10'a): for i = 1, 10 do print(i) end -- For döngüsü (adımlı): for i = 10, 1, -1 do -- Geri sayım print(i) end -- For döngüsü (tablo için): local meyveler = {"elma", "armut", "muz"} for index, meyve in ipairs(meyveler) do print(index .. ": " .. meyve) end -- While döngüsü: local sayac = 1 while sayac <= 5 do print(sayac) sayac = sayac + 1 end -- Repeat until: local x = 1 repeat print(x) x = x + 1 until x > 5]] }, { keywords = {"koşul", "if", "else", "then"}, response = [[Koşullar, karar vermek için: local yas = 18 if yas >= 18 then print("Yetişkin") elseif yas >= 13 then print("Genç") else print("Çocuk") end -- Operatörler: == eşit mi? ~= eşit değil mi? > büyük mü? < küçük mü? >= büyük eşit mi? <= küçük eşit mi? -- Mantıksal operatörler: if yas >= 18 and ehliyet == true then print("Araba kullanabilir") end if yas < 18 or veliIzin == true then print("Girebilir") end]] }, { keywords = {"event", "olay", "connect"}, response = [[Event'ler, Roblox'ta etkileşim için kullanılır: -- Touched event (dokunma): script.Parent.Touched:Connect(function(hit) print(hit.Name .. " dokundu!") hit:Destroy() -- Dokunan objeyi yok et end) -- ClickDetector (tıklama): local detector = Instance.new("ClickDetector") detector.Parent = script.Parent detector.MouseClick:Connect(function(player) print(player.Name .. " tıkladı!") player.leaderstats.Para.Value = player.leaderstats.Para.Value + 10 end) -- Changed event (değişim): script.Parent.Changed:Connect(function(property) print(property .. " değişti!") if property == "Position" then print("Pozisyon: " .. tostring(script.Parent.Position)) end end) -- PlayerAdded event: game.Players.PlayerAdded:Connect(function(player) print(player.Name .. " oyuna girdi!") end)]] }, { keywords = {"service", "servis", "getservice"}, response = [[Service'ler, Roblox'un ana bileşenleridir: -- Önemli servisler: local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local ReplicatedStorage = game:GetService("ReplicatedStorage") local ServerScriptService = game:GetService("ServerScriptService") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local Debris = game:GetService("Debris") local RunService = game:GetService("RunService") local Lighting = game:GetService("Lighting") local MarketplaceService = game:GetService("MarketplaceService") -- Kullanım örnekleri: Players.PlayerAdded:Connect(function(player) print(player.Name .. " oyuna girdi!") end) UserInputService.InputBegan:Connect(function(input) if input.KeyCode == Enum.KeyCode.Space then print("Space basıldı!") end end)]] }, { keywords = {"instance", "yeni obje", "new"}, response = [[Instance, Roblox'taki tüm objelerin temelidir: -- Temel instance'lar: local part = Instance.new("Part") local tool = Instance.new("Tool") local model = Instance.new("Model") local screenGui = Instance.new("ScreenGui") local frame = Instance.new("Frame") local textButton = Instance.new("TextButton") local textLabel = Instance.new("TextLabel") -- Özellik atama: part.Name = "BenimPartim" part.Parent = workspace part.Size = Vector3.new(4, 2, 1) part.Position = Vector3.new(0, 10, 0) part.BrickColor = BrickColor.new("Bright red") part.Material = Enum.Material.Metal part.Anchored = true part.CanCollide = true -- Instance'i klonlama: local yeniPart = part:Clone() yeniPart.Parent = workspace]] }, { keywords = {"coroutine", "eş zamanlı", "spawn", "delay"}, response = [[Coroutine'ler, eş zamanlı işlemler için: -- spawn ile (basit): spawn(function() while true do print("Arka planda çalışıyor...") wait(2) end end) -- delay ile (gecikmeli): delay(5, function() print("5 saniye sonra çalıştı!") end) -- Coroutine ile: local co = coroutine.create(function() for i = 1, 5 do print("Coroutine: " .. i) wait(1) end end) coroutine.resume(co) -- Başlat print(coroutine.status(co)) -- running, suspended, dead -- Birden fazla coroutine aynı anda çalışabilir!]] }, { keywords = {"metatable", "meta tablo", "metamethod"}, response = [[Metatable'ler, tablolara özel davranışlar ekler: local tablo = {} local meta = { -- Olmayan key'e erişim: __index = function(t, key) return "Bilinmeyen: " .. key end, -- Yeni key atama: __newindex = function(t, key, value) print(key .. " = " .. value .. " atandı!") rawset(t, key, value) end, -- Toplama işlemi: __add = function(a, b) return "Toplama yapılamaz!" end, -- String gösterimi: __tostring = function(t) return "Bu bir tablo" end, -- Fonksiyon gibi çağırma: __call = function(t, ...) print("Tablo çağrıldı!") end } setmetatable(tablo, meta) -- Kullanım: print(tablo.olmayanKey) -- Bilinmeyen: olmayanKey tablo.yeniKey = "değer" -- yeniKey = değer atandı! print(tablo) -- Bu bir tablo tablo() -- Tablo çağrıldı!]] }, { keywords = {"string", "yazı", "metin"}, response = [[String işlemleri (yazılar): local yazi = "Merhaba Dünya" -- Uzunluk: print(#yazi) -- 13 -- Birleştirme: print("Merhaba " .. "Dünya") -- Merhaba Dünya -- Büyük/küçük harf: print(string.upper(yazi)) -- MERHABA DÜNYA print(string.lower(yazi)) -- merhaba dünya -- Parça alma: print(string.sub(yazi, 1, 7)) -- Merhaba -- Arama: local bas, son = string.find(yazi, "Dünya") print(bas, son) -- 9 13 -- Değiştirme: local yeni = string.gsub(yazi, "a", "e") print(yeni) -- Merhebe Dünye -- Ters çevirme: print(string.reverse(yazi)) -- aynüD abahreM -- Formatlı yazı: local isim = "Ali" local yas = 15 print(string.format("Ben %s, %d yaşındayım", isim, yas))]] }, { keywords = {"math", "matematik", "sayı"}, response = [[Matematik fonksiyonları: -- Temel işlemler: math.abs(-10) -- 10 (mutlak değer) math.ceil(4.2) -- 5 (yukarı yuvarla) math.floor(4.8) -- 4 (aşağı yuvarla) math.round(4.5) -- 5 (en yakına yuvarla) math.max(5, 10, 3) -- 10 (en büyük) math.min(5, 10, 3) -- 3 (en küçük) -- Üs ve karekök: math.sqrt(16) -- 4 (karekök) math.pow(2, 3) -- 8 (2 üzeri 3) math.exp(1) -- 2.718 (e üzeri 1) math.log(10) -- 2.302 (doğal log) math.log10(100) -- 2 (10 tabanında log) -- Trigonometri: math.sin(math.rad(90)) -- 1 (90 derecenin sinüsü) math.cos(math.rad(0)) -- 1 math.tan(math.rad(45)) -- 1 math.deg(math.pi) -- 180 (radyanı derece çevir) math.rad(180) -- 3.1415 (dereceyi radyan çevir) -- Rastgele sayı: math.random() -- 0-1 arası rastgele math.random(1, 100) -- 1-100 arası rastgele math.randomseed(os.time()) -- Rastgelelik tohumu -- Sabitler: math.pi -- 3.14159 math.huge -- Sonsuz math.maxinteger -- Maksimum integer math.mininteger -- Minimum integer]] }, { keywords = {"vector3", "vector", "vektör"}, response = [[Vector3, 3 boyutlu vektörler için: local v1 = Vector3.new(1, 2, 3) local v2 = Vector3.new(4, 5, 6) -- Temel işlemler: print(v1 + v2) -- (5, 7, 9) print(v1 - v2) -- (-3, -3, -3) print(v1 * 2) -- (2, 4, 6) print(v1 / 2) -- (0.5, 1, 1.5) -- Özellikler: print(v1.Magnitude) -- Uzunluk (√14 ≈ 3.74) print(v1.Unit) -- Birim vektör (uzunluğu 1 olan) print(v1.X, v1.Y, v1.Z) -- Bileşenler (1, 2, 3) -- Önemli metodlar: local dot = v1:Dot(v2) -- Nokta çarpım (1*4 + 2*5 + 3*6 = 32) local cross = v1:Cross(v2) -- Çapraz çarpım local dist = (v1 - v2).Magnitude -- İki vektör arası mesafe -- Kullanım alanları: part.Position = Vector3.new(0, 10, 0) part.Size = Vector3.new(4, 2, 1) local yon = part.CFrame.LookVector -- Yön vektörü]] }, { keywords = {"cframe", "koordinat", "dönüş", "açı"}, response = [[CFrame, konum + dönüş içerir (Coordinate Frame): -- Oluşturma: local cf1 = CFrame.new(0, 5, 0) -- Sadece konum local cf2 = CFrame.new(0, 5, 0) * CFrame.Angles(0, math.rad(90), 0) -- Konum + 90° dönüş local cf3 = CFrame.lookAt(Vector3.new(0, 5, 0), Vector3.new(10, 5, 10)) -- Bir noktaya bak -- Özellikler: local pos = cf1.Position -- Konum (Vector3) local x, y, z = cf1:ToOrientation() -- Dönüş açıları (radyan) local left, up, right = cf1:ToWorldSpace(Vector3.new(1, 0, 0)) -- Yerel vektörü dünya'ya çevir -- İşlemler: cf = cf + Vector3.new(1, 0, 0) -- Öteleme cf = cf * CFrame.Angles(0, 0.1, 0) -- Döndürme cf = cf:Inverse() -- Ters çevir -- Kullanım: part.CFrame = CFrame.new(0, 10, 0) * CFrame.Angles(0, math.rad(45), 0) camera.CFrame = CFrame.new(0, 5, 10) * CFrame.Angles(0, math.rad(180), 0)]] }, { keywords = {"color3", "renk"}, response = [[Color3, RGB renkleri için: -- RGB (0-1 arası): local kirmizi = Color3.new(1, 0, 0) local yesil = Color3.new(0, 1, 0) local mavi = Color3.new(0, 0, 1) local sari = Color3.new(1, 1, 0) -- RGB (0-255 arası): local kirmizi2 = Color3.fromRGB(255, 0, 0) local pembe = Color3.fromRGB(255, 192, 203) local mor = Color3.fromRGB(128, 0, 128) -- Hex kodu: local mavi2 = Color3.fromHex("#0000FF") local turuncu = Color3.fromHex("#FFA500") -- BrickColor (Roblox hazır renkleri): local kirmiziPart = BrickColor.new("Bright red") local maviPart = BrickColor.new("Bright blue") local rastgele = BrickColor.Random() -- Kullanım: part.BrickColor = BrickColor.new("Bright yellow") part.Color = Color3.fromRGB(255, 200, 100) background.BackgroundColor3 = Color3.new(0.2, 0.2, 0.2)]] }, { keywords = {"tween", "animasyon", "yumuşak geçiş"}, response = [[Tween, yumuşak animasyonlar için: local TweenService = game:GetService("TweenService") local part = script.Parent local hedef = { Position = Vector3.new(10, 5, 10), Size = Vector3.new(4, 2, 4), Color = Color3.fromRGB(255, 0, 0), Transparency = 0.5, Rotation = Vector3.new(0, 180, 0) } -- Tween bilgileri: local tweenInfo = TweenInfo.new( 2, -- Süre (saniye) Enum.EasingStyle.Quad, -- Stil: Linear, Sine, Back, Bounce, Elastic, etc. Enum.EasingDirection.Out, -- Yön: In, Out, InOut 0, -- Tekrar sayısı false, -- Ters çal (reverse) 0 -- Gecikme ) -- Tween oluştur ve çalıştır: local tween = TweenService:Create(part, tweenInfo, hedef) tween:Play() -- Tween kontrolü: tween:Pause() tween:Resume() tween:Cancel() tween.Completed:Connect(function() print("Animasyon bitti!") end) -- Stiller: -- Linear: Doğrusal -- Sine: Sinüs eğrisi -- Back: Geri çekilip gitme -- Bounce: Zıplayarak -- Elastic: Lastik gibi esneyerek]] }, { keywords = {"raycast", "ışın", "çarpışma"}, response = [[Raycast, ışın gönderip çarpışma kontrolü: local params = RaycastParams.new() params.FilterType = Enum.RaycastFilterType.Blacklist -- Blacklist veya Whitelist params.FilterDescendantsInstances = {script.Parent} -- Yok sayılacak objeler params.IgnoreWater = true -- Suyu yok say local baslangic = script.Parent.Position local yon = script.Parent.CFrame.LookVector * 100 -- 100 birim ileri local sonuc = workspace:Raycast(baslangic, yon, params) if sonuc then print("Çarpılan obje: " .. sonuc.Instance.Name) print("Çarpışma noktası: " .. tostring(sonuc.Position)) print("Yüzey normali: " .. tostring(sonuc.Normal)) print("Mesafe: " .. sonuc.Distance) -- Çarpılan yere efekt koy: local effect = Instance.new("Part") effect.Size = Vector3.new(0.5, 0.5, 0.5) effect.Position = sonuc.Position effect.BrickColor = BrickColor.new("Bright yellow") effect.Anchored = true effect.Parent = workspace -- 2 saniye sonra sil: game:GetService("Debris"):AddItem(effect, 2) end -- Mouse raycast (kamera'dan ışın): local mouse = player:GetMouse() local unitRay = mouse.UnitRay local raycastResult = workspace:Raycast(unitRay.Origin, unitRay.Direction * 1000)]] }, { keywords = {"remoteevent", "remotefunction", "network", "client server"}, response = [[RemoteEvent ve RemoteFunction, client-server iletişimi: -- REMOTEEVENT (tek yönlü, cevap beklemez): -- Server'da (Script): local remote = Instance.new("RemoteEvent") remote.Name = "MesajGonder" remote.Parent = game.ReplicatedStorage remote.OnServerEvent:Connect(function(player, mesaj, sayi) print(player.Name .. " gönderdi: " .. mesaj) print("Sayı: " .. sayi) -- Tüm oyunculara gönder: remote:FireAllClients("Merhaba herkese!") end) -- Client'da (LocalScript): local remote = game.ReplicatedStorage:MesajGonder remote:FireServer("Selam server!", 42) remote.OnClientEvent:Connect(function(mesaj) print("Server'dan gelen: " .. mesaj) end) -- REMOTEFUNCTION (cevap bekler): -- Server'da: local func = Instance.new("RemoteFunction") func.Name = "Matematik" func.Parent = game.ReplicatedStorage func.OnServerInvoke = function(player, islem, sayi1, sayi2) if islem == "topla" then return sayi1 + sayi2 elseif islem == "carp" then return sayi1 * sayi2 end return nil end -- Client'da: local func = game.ReplicatedStorage:Matematik local sonuc = func:InvokeServer("topla", 5, 3) print("Sonuç: " .. sonuc) -- 8]] }, { keywords = {"tool", "araç", "envanter", "backpack"}, response = [[Tool (Araç) sistemi: -- Tool oluşturma: local tool = Instance.new("Tool") tool.Name = "Kılıç" tool.RequiresHandle = false -- Handle gerekli mi? tool.CanBeDropped = true -- Yere atılabilir mi? tool.Grip = CFrame.new(0, 0, 0) -- Tutuş pozisyonu tool.Parent = game.ReplicatedStorage -- Tool'u oyuncuya ver: local player = game.Players.LocalPlayer local tool = game.ReplicatedStorage:FindFirstChild("Kılıç"):Clone() tool.Parent = player.Backpack -- Envantere koy -- Event'ler: tool.Activated:Connect(function() print("Tool kullanıldı! (sol tık)") -- Animasyon, hasar, efekt ekle end) tool.Equipped:Connect(function() print("Tool kuşanıldı!") -- Tool eldeyken yapılacaklar end) tool.Unequipped:Connect(function() print("Tool çıkarıldı!") -- Tool elden çıkarılınca end) -- Handle (görsel) ekleme: local handle = Instance.new("Part") handle.Size = Vector3.new(1, 3, 0.5) handle.BrickColor = BrickColor.new("Brown") handle.Parent = tool tool.Handle = handle]] }, { keywords = {"gui", "arayüz", "ui", "screen"}, response = [[GUI (Arayüz) oluşturma: -- ScreenGui oluştur: local player = game.Players.LocalPlayer local gui = Instance.new("ScreenGui") gui.Name = "BenimGui" gui.Parent = player.PlayerGui gui.ResetOnSpawn = false -- Ölünce sıfırlanmasın -- Frame (panel): local frame = Instance.new("Frame") frame.Parent = gui frame.Size = UDim2.new(0, 300, 0, 200) frame.Position = UDim2.new(0.5, -150, 0.5, -100) frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) frame.BackgroundTransparency = 0.2 frame.BorderSizePixel = 0 -- Köşe yuvarlama: local corner = Instance.new("UICorner", frame) corner.CornerRadius = UDim.new(0, 10) -- TextButton (buton): local button = Instance.new("TextButton") button.Parent = frame button.Size = UDim2.new(0, 200, 0, 40) button.Position = UDim2.new(0.5, -100, 0.8, -20) button.Text = "TIKLA BENİ" button.TextColor3 = Color3.fromRGB(255, 255, 255) button.BackgroundColor3 = Color3.fromRGB(0, 120, 255) button.Font = Enum.Font.GothamBold button.TextSize = 18 button.MouseButton1Click:Connect(function() print("Butona tıklandı!") button.Text = "TIKLANDI!" end) -- TextLabel (yazı): local label = Instance.new("TextLabel") label.Parent = frame label.Size = UDim2.new(1, -20, 0, 40) label.Position = UDim2.new(0, 10, 0, 10) label.Text = "Hoş Geldin!" label.TextColor3 = Color3.fromRGB(255, 255, 255) label.BackgroundTransparency = 1 label.TextSize = 24 label.Font = Enum.Font.Gotham -- TextBox (giriş): local textBox = Instance.new("TextBox") textBox.Parent = frame textBox.Size = UDim2.new(0, 280, 0, 30) textBox.Position = UDim2.new(0, 10, 0, 60) textBox.PlaceholderText = "Bir şey yaz..." textBox.Text = "" textBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50) textBox.TextColor3 = Color3.fromRGB(255, 255, 255)]] }, { keywords = {"dataload", "veri kaydet", "save", "datastore"}, response = [[Veri kaydetme (DataStore): local DataStoreService = game:GetService("DataStoreService") local veriDeposu = DataStoreService:GetDataStore("OyuncuVerileri") -- VERİ KAYDETME (Server): game.Players.PlayerRemoving:Connect(function(player) local veri = { para = player.leaderstats.Para.Value, level = player.leaderstats.Level.Value, esya = player.EsyaListesi, sonKonum = player.Character.HumanoidRootPart.Position } local basarili, hata = pcall(function() veriDeposu:SetAsync(player.UserId, veri) end) if basarili then print(player.Name .. " verisi kaydedildi!") else warn("Veri kaydedilemedi: " .. hata) end end) -- VERİ YÜKLEME (Server): game.Players.PlayerAdded:Connect(function(player) local veri = { para = 0, level = 1, esya = {}, sonKonum = Vector3.new(0, 10, 0) } local basarili, yuklenenVeri = pcall(function() return veriDeposu:GetAsync(player.UserId) end) if basarili and yuklenenVeri then veri = yuklenenVeri print(player.Name .. " verisi yüklendi!") else print("Yeni oyuncu, varsayılan veri oluşturuldu.") end -- Leaderstats oluştur: local stats = Instance.new("Folder") stats.Name = "leaderstats" stats.Parent = player local para = Instance.new("IntValue") para.Name = "Para" para.Value = veri.para or 0 para.Parent = stats local level = Instance.new("IntValue") level.Name = "Level" level.Value = veri.level or 1 level.Parent = stats end) -- GELİŞMİŞ: Otomatik kaydetme (her 5 dakikada bir): while true do wait(300) -- 5 dakika for _, player in ipairs(game.Players:GetPlayers()) do -- Otomatik kaydet end end]] }, -- GENEL KONULAR (200+) {keywords = {"merhaba", "selam", "hey"}, response = "Merhaba dostum! 👋 Ben Ok-13 AI. Sana nasıl yardımcı olabilirim? 500+ kelime ve Lua uzmanıyım!"}, {keywords = {"günaydın"}, response = "Günaydın! Umarım harika bir gün geçirirsin. Bugün sana nasıl yardımcı olabilirim? ☀️"}, {keywords = {"iyi akşamlar"}, response = "İyi akşamlar! Günün nasıl geçti? Anlatmak istersen dinliyorum. 🌙"}, {keywords = {"naber", "nasılsın"}, response = "İyiyim dostum! Seni gördüğüme çok mutluyum. Sen nasılsın? 😊"}, {keywords = {"teşekkürler", "sağ ol"}, response = "Rica ederim! Ne demek, her zaman buradayım. Başka bir şey sormak ister misin? 🙏"}, {keywords = {"adın ne"}, response = "Ben Ok-13 AI! Senin dostun, yardımcın ve dert ortağın. Roblox Lua ile yazıldım! 🤖"}, {keywords = {"roblox"}, response = "Roblox harika bir platform! Oyun yapıyor musun? Hangi oyunları oynuyorsun? Ben Lua kodlamada uzmanım!"}, {keywords = {"oyun yapma"}, response = "Oyun yapmak çok eğlenceli! Roblox Studio'da Lua ile neler yapabileceğini anlatabilirim. Hangi konuda yardım istersin?"}, {keywords = {"bedwars"}, response = "BedWars çok popüler! Hangi kiti kullanıyorsun? Taktikler hakkında konuşabiliriz. Ben en çok hızlı elmas toplamayı severim! ⚔️"}, {keywords = {"blox fruits"}, response = "Blox Fruits'te en iyi meyveler: Dragon, Dough, Buddha, Venom. Sen hangi meyveyi kullanıyorsun? Deniz seviyen kaç? 🏴‍☠️"}, {keywords = {"kapat"}, response = "Görüşürüz! Yine beklerim. Hoşça kal! 👋"}, } -- ==================== MESAJLAŞMA SİSTEMİ ==================== local messageHistory = {} local function addMessage(text, isUser) local messageFrame = Instance.new("Frame") messageFrame.Parent = LMG2L["ScrollingFrame_9"] messageFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0) messageFrame.BackgroundTransparency = 1 messageFrame.Size = UDim2.new(1, -10, 0, 50) messageFrame.Position = UDim2.new(0, 5, 0, #messageHistory * 55) local messageLabel = Instance.new("TextLabel") messageLabel.Parent = messageFrame messageLabel.Size = UDim2.new(isUser and 0.7 or 0.8, 0, 0, 40) messageLabel.Position = UDim2.new(isUser and 0.3 or 0, 5, 0, 5) messageLabel.BackgroundColor3 = isUser and Color3.fromRGB(76, 175, 80) or Color3.fromRGB(33, 150, 243) messageLabel.TextColor3 = Color3.fromRGB(255, 255, 255) messageLabel.Text = (isUser and "👤 Sen: " or "🤖 AI: ") .. text messageLabel.TextWrapped = true messageLabel.TextXAlignment = Enum.TextXAlignment.Left messageLabel.Font = Enum.Font.Gotham messageLabel.TextSize = 14 local corner = Instance.new("UICorner", messageLabel) corner.CornerRadius = UDim.new(0, 8) table.insert(messageHistory, {text = text, isUser = isUser}) LMG2L["ScrollingFrame_9"].CanvasSize = UDim2.new(0, 0, 0, #messageHistory * 55 + 10) wait(0.1) LMG2L["ScrollingFrame_9"].CanvasPosition = Vector2.new(0, LMG2L["ScrollingFrame_9"].CanvasSize.Y.Offset) end local function getAIResponse(input) input = string.lower(input) -- Matematik kontrolü if string.find(input, "+") then local nums = {} for num in string.gmatch(input, "%d+") do table.insert(nums, tonumber(num)) end if #nums >= 2 then return "🧮 Sonuç: " .. (nums[1] + nums[2]) end end if string.find(input, "*") or string.find(input, "x") then local nums = {} for num in string.gmatch(input, "%d+") do table.insert(nums, tonumber(num)) end if #nums >= 2 then return "🧮 Sonuç: " .. (nums[1] * nums[2]) end end -- Keyword eşleştirme local bestMatch = nil local bestScore = 0 for _, data in ipairs(aiDatabase) do for _, keyword in ipairs(data.keywords) do if string.find(input, keyword) then local score = #keyword if score > bestScore then bestScore = score bestMatch = data.response end end end end if bestMatch then return bestMatch end -- Varsayılan cevaplar local defaults = { "Anlamadım dostum. Biraz daha açıklar mısın? 🤔", "İlginç! Bunun hakkında daha fazla konuşalım mı?", "Hmm, anlamaya çalışıyorum. Devam et!", "Bunu biraz düşünmem gerek. Başka bir şey sormak ister misin?", "Güzel bir nokta! Peki sen ne düşünüyorsun?", "Vay canına! Bunu hiç düşünmemiştim.", "Çok mantıklı! Başka?", "Anlat anlat, seni dinliyorum. 👂", "Bu konuda ne düşündüğünü merak ediyorum.", "Sohbet etmek çok güzel! Başka ne sormak istersin?" } return defaults[math.random(#defaults)] end -- ==================== DRAGGABLE ==================== do local dragging = false local dragInput local dragStart local startPos LMG2L["Frame_2"].InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = LMG2L["Frame_2"].Position end end) LMG2L["Frame_2"].InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end) game:GetService("UserInputService").InputChanged:Connect(function(input) if input == dragInput and dragging then local delta = input.Position - dragStart LMG2L["Frame_2"].Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) end -- ==================== BUTON İŞLEVLERİ ==================== LMG2L["TextButton_19"].MouseButton1Click:Connect(function() LMG2L["ScreenGui_1"]:Destroy() end) LMG2L["TextButton_16"].MouseButton1Click:Connect(function() local msg = LMG2L["TextBox_13"].Text if msg and msg ~= "" and msg ~= "Mesajınızı yazın..." then addMessage(msg, true) local response = getAIResponse(msg) wait(0.3) addMessage(response, false) LMG2L["TextBox_13"].Text = "" end end) LMG2L["TextBox_13"].FocusLost:Connect(function(enter) if enter then LMG2L["TextButton_16"].MouseButton1Click:Fire() end end) LMG2L["TextBox_13"].Focused:Connect(function() if LMG2L["TextBox_13"].Text == "Mesajınızı yazın..." then LMG2L["TextBox_13"].Text = "" end end) LMG2L["TextBox_13"].FocusLost:Connect(function() if LMG2L["TextBox_13"].Text == "" then LMG2L["TextBox_13"].Text = "Mesajınızı yazın..." end end) -- ==================== HOŞGELDİN MESAJI ==================== addMessage("Selam! Ben Ok-13 Süper Dev AI! 500+ kelime, 100+ konu ve LUA uzmanıyım! Sana nasıl yardımcı olabilirim? 🤖", false) addMessage("Lua, Roblox, script, kodlama hakkında her şeyi sorabilirsin! Örnek: 'lua nedir', 'fonksiyon', 'tablo'", false) print("✅ OK-13 SÜPER DEV AI SİSTEMİ AKTİF!") print("📚 500+ kelime, 100+ konu, LUA UZMANI") return LMG2L["ScreenGui_1"], require;