ყველას სურდა მონაცემების შენახვა და მათი ჩატვირთვა ყოველ ჯერზე, როდესაც მოთამაშე კვლავ შემოდის თამაშში? მას შემდეგ რაც მონაცემთა გამძლეობა უშედეგო გახდა, ROBLOX წარმოგიდგენთ მონაცემთა მაღაზიებს, რომლებიც ბევრად უფრო ფუნქციონირებს. ქვემოთ მოყვანილი ინსტრუქცია საშუალებას მოგცემთ იმუშაოთ ROBLOX– ის მონაცემთა ბაზებთან.
ნაბიჯები
3 მეთოდი 1: მონაცემთა მაღაზიის დაყენება
ნაბიჯი 1. კონფიგურაცია API
ეს არ ითვალისწინებს სკრიპტირებას, მაგრამ იმისათვის, რომ გაააქტიუროთ ყველა მონაცემთა მაღაზიის API, ჯერ უნდა ჩართოთ API წვდომა. ამისათვის გადადით ჩანართზე "განვითარება" და დააჭირეთ "თამაშები". ამან უნდა მიგიყვანოთ ყველა იმ თამაშში, სადაც თქვენ ფლობთ. იპოვეთ თქვენი თამაში და დააწკაპუნეთ მექანიზმზე. უნდა გამოჩნდეს ჩამოსაშლელი მენიუ და უბრალოდ დააჭირეთ ღილაკს "კონფიგურაცია". შეამოწმეთ ყუთი ჩართული "ჩართეთ სტუდიის წვდომა API სერვისებზე" და შეინახეთ. ახლა თქვენ უნდა გქონდეთ წვდომა სრულ API– ზე.
ნაბიჯი 2. მონაცემების შენახვა
გამოიყენეთ მონაცემთა მაღაზიის API მონაცემთა შენახვის გამოძახებისთვის, რადგან ჩვენ გვჭირდება მისი მითითება. დასაწყებად, გახსენით სკრიპტი ROBLOX– ზე და დაასახელეთ ცვლადი, რომელიც ჩვენ გვსურს გამოვიყენოთ მითითებისთვის.
ადგილობრივი მონაცემთა ბაზ = თამაში: GetService ("DataStoreService"): GetDataStore ("სახელი")
ნაბიჯი 3. გამოიყენეთ ცვლადი საჭიროებისამებრ
თქვენ წარმატებით დარეკეთ მონაცემთა ბაზის ცვლადი ცვლადით "მონაცემთა ბაზა". ახლა, როდესაც გჭირდებათ მონაცემთა ბაზის აღდგენა, შეგიძლიათ უბრალოდ დაასახელოთ იგი თავისი ცვლადის მიხედვით.
გთხოვთ გაითვალისწინოთ, რომ თუ მონაცემთა მაღაზია ჯერ არ არის შექმნილი, ის ავტომატურად შექმნის ახალს
მეთოდი 3 დან 3: მონაცემთა შენახვის მეთოდების გამოყენება
ნაბიჯი 1. GetAsync
გამოიყენეთ GetAsync მონაცემების მაღაზიაში შესვლის მნიშვნელობის დასაბრუნებლად მოცემული გასაღებით. დარწმუნდით, რომ თითოეულ მოთამაშეს მიეცით გასაღებების უნიკალური ნაკრები, რადგან ორი მოთამაშეს ერთი და იგივე გასაღები გადააჭარბებს საკუთარ მონაცემებს თამაშში, რაც გამოიწვევს ქაოსს ორ მხარეს შორის. თუ გსურთ იცოდეთ როგორ დააყენოთ უნიკალური გასაღები, წაიკითხეთ.
- შემდეგი კოდი გამოვა ნული, რადგან სერვერმა ვერ იპოვა რაიმე მნიშვნელობა, რომელიც უკავშირდება გასაღებს; მნიშვნელოვანია სერვერზე ვაჩვენოთ ზუსტად ის, რისი გამომუშავებასაც ვცდილობთ, რათა სერვერმა იცოდეს რა უნდა იყოს ნაჩვენები.
ადგილობრივი მონაცემთა ბაზ = თამაში: GetService ("DataStoreService"): GetDataStore ("სახელი") game. Players. Player დამატებულია: დაკავშირება (ფუნქცია (მოთამაშე) ადგილობრივი გასაღები = "user_".. player.userId datastore: GetAsync (გასაღები) დასასრული)
ნაბიჯი 2. SetAsync
გამოიყენეთ SetAsync გასაღების მნიშვნელობის დასადგენად და გადალახავს უნიკალურ გასაღებისთვის შენახულ ყველა არსებულ მონაცემს.
- თუ ინფორმაციის წინა ნაკრები მნიშვნელოვანია, განიხილეთ UpdateAsync– ის გამოყენება, რომელიც ქვემოთ იქნება გასწავლილი.
- შემდეგი კოდი გიჩვენებთ, თუ როგორ უნდა განახორციელოთ ორივე მეთოდი: ": GetAsync ()" და ": SetAsync ()".
ადგილობრივი მონაცემთა ბაზ = თამაში: GetService ("DataStoreService"): GetDataStore ("სახელი") game. Players. Player დამატებულია: დაკავშირება (ფუნქცია (მოთამაშე) ადგილობრივი გასაღები = "user_".. player.userId datastore: SetAsync (გასაღები, 90) - - ადგენს გასაღებს მნიშვნელობისთვის, 90 ლოკალური მონაცემთა_განაცხ. = მონაცემების შენახვა: GetAsync (გასაღები) - შეუძლია ამოიცნოს ღირებულების ცვლილების ბეჭდვა (მონაცემთა შენახული) - ბეჭდავს გამომავალ ბოლოს)
ნაბიჯი 3. გამოიყენეთ UpdateAsync გასაღების მნიშვნელობის დასაბრუნებლად და განაახლეთ იგი ახალი მნიშვნელობით
ეს ადასტურებს მონაცემებს და, შესაბამისად, უნდა დაელოდოს სანამ სერვერი იპოვის დრო მის განახლებას. იმისათვის, რომ ეს იმუშაოს, თქვენ უნდა გაიაროთ ორი პარამეტრი; პირველი არის სტრიქონი, რომელიც იღებს თქვენს მიერ შექმნილ უნიკალურ გასაღებს: "'user_'.. player.userId", ხოლო მეორე არის ფუნქცია, რომელიც მიიღებს ძველ მნიშვნელობას.
local datastore = თამაში: GetService ("DataStoreService"): GetDataStore ("სახელი") game. Players. PlayerAdded: დაკავშირება (ფუნქცია (მოთამაშე) ადგილობრივი გასაღები = "user_".. player.userId datastore: UpdateAsync (გასაღები, ფუნქცია (ძველი) - საქმეების დასრულება) დასრულება)
ადგილობრივი მონაცემთა ბაზ = თამაში: GetService ("DataStoreService"): GetDataStore ("სახელი") game. Players. Player დამატებულია: დაკავშირება (ფუნქცია (მოთამაშე) ადგილობრივი გასაღები = "user_".. player.userId datastore: UpdateAsync (გასაღები, ფუნქცია (ძველი) ადგილობრივი ახალი = ძველი ან 0 - შეიძლება იყოს ნული ახალი = ახალი + 1 - დაამატეთ 1 ძველ მნიშვნელობას დააბრუნეთ ახალი - უბრუნებს მას ახალი მნიშვნელობის დასასრულს) დასასრული)
ნაბიჯი 4. გამოიყენეთ IncrementAsync გასაღების მნიშვნელობის გასაზრდელად და აბრუნებს დამატებით მნიშვნელობას
ეს მეთოდი მუშაობს მხოლოდ მთელ რიცხვზე.
მეთოდი 3 -დან 3: მონაცემთა შენახვის მოვლენები და მონაცემების განახლება
ნაბიჯი 1. დააყენეთ უნიკალური გასაღები
ძალიან მნიშვნელოვანია, რომ თითოეულ მოთამაშეს ჰქონდეს გასაღები, რომელიც მისთვის უნიკალურია. ისინი დაიჭერენ იმ გასაღებს, რომელიც ინახავს მათ ყველა მონაცემს. ამისათვის ჩვენ ვიყენებთ მოთამაშის პირადობის მოწმობას. მონაცემების შენახვის დაყენების შემდეგ, უბრალოდ დარეკეთ ფუნქციაზე, რომ ჩაწეროს პლეერი და შემდეგ მოძებნოთ მოთამაშის ID. კოდი უნდა გამოიყურებოდეს შემდეგნაირად:
ადგილობრივი მონაცემთა ბაზ = თამაში: GetService ("DataStoreService"): GetDataStore ("სახელი") game. Players. Player დამატებულია: დაკავშირება (ფუნქცია (მოთამაშე) ადგილობრივი გასაღები = "user_".. player.userId დასასრული)
ნაბიჯი 2. განაახლეთ მონაცემები
ახლა, როდესაც თქვენ გაქვთ უნიკალური გასაღები თითოეული მოთამაშისთვის, თქვენ აპირებთ მონაცემთა შენახვის განახლებას და მონაცემების მიღებას. თქვენი გასაღების ქვეშ, თქვენ გსურთ დაამატოთ მეთოდი, რომელიც ყველაზე მეტად შეესაბამება თქვენს საჭიროებებს. ამ შემთხვევაში, ჩვენ გამოვიყენებთ "UpdateAsync".
- დაიწყეთ ფუნქციით, რომელიც დაეხმარება სერვერს გააცნობიეროს რის გაკეთებას აპირებთ.
ადგილობრივი datastore = თამაში: GetService ("DataStoreService"): GetDataStore ("სახელი") game. Players. PlayerAdded: დაკავშირება (ფუნქცია (მოთამაშე) ადგილობრივი გასაღები = "user_".. player.userId datastore: UpdateAsync (გასაღები, ფუნქცია (ძველი) ადგილობრივი newValue = ძველი ან 0 - შეიძლება იყოს ნული newValue = newValue + 50 დაბრუნება newValue დასასრული) დასასრული)
ნაბიჯი 3. გილოცავთ
თქვენ წარმატებით შეინახეთ და განაახლეთ მოთამაშის მონაცემები.
გაფრთხილებები
- თქვენი მონაცემთა მაღაზიის შექმნისას დარწმუნდით, რომ გქონდეთ "თამაში: GetService (" DataStoreService ")", სწორი კაპიტალიზაციით. ის არ იმუშავებს ეფექტურად, თუ მას არასწორად ეძახიან.
- დარწმუნდით, რომ უნდა იცოდეთ როდის გამოიყენოთ "SetAsync" და "UpdateAsync", რადგან არასწორი მონაცემების გამოყენება მონაცემების მიღებისას შეიძლება არეულად იქცეს. უმეტეს შემთხვევაში, დეველოპერები გამოიყენებენ "UpdateAsync" - ს.