Advertisement
Szczepan86

[GODOT] Przedmioty

Dec 1st, 2018
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.01 KB | None | 0 0
  1. extends Node
  2.  
  3. # SQLite module
  4. const SQLite = preload("res://lib/gdsqlite.gdns");
  5.  
  6. # Variables
  7. var lista_przedmiotow = [];
  8. var ekwipunek = [];
  9. var db
  10.  
  11. func _ready():
  12. # Create gdsqlite instance
  13. db = SQLite.new();
  14.  
  15. # Open item database
  16. db.open_db("res://baza/baza.db");
  17.  
  18.  
  19. print("danie przedmiotu")
  20. daj_przedmiot_bohaterowi(str(1), str(3))
  21. daj_przedmiot_bohaterowi(str(1), str(3))
  22.  
  23. print("pierwsza transakcja")
  24. zdejmij_przedmiot_ze_sklepu(str(1), str(3))
  25. zdejmij_przedmiot_ze_sklepu(str(1), str(3))
  26. print("druga transakcja")
  27. zdejmij_przedmiot_ze_sklepu(str(5), str(30))
  28.  
  29.  
  30. #wyswietl_ekwipunek()
  31.  
  32. func daj_przedmiot_bohaterowi(bohaterid, przedmiotid):
  33. var query = "select ilosc from bohater_przedmiot where bohaterid = " + bohaterid + " AND przedmiotid = " + przedmiotid + ";"
  34. var result = db.fetch_array(query)
  35.  
  36. var ilosc = 0
  37. for r in result:
  38. ilosc = r['ilosc']
  39. print(ilosc)
  40.  
  41. if ilosc == 0:
  42. query = "INSERT INTO bohater_przedmiot (bohaterid, przedmiotid, ilosc) VALUES ('" + bohaterid + "', '" + przedmiotid + "', 1);";
  43. result = db.query(query)
  44. else:
  45. var nowa_ilosc = str(ilosc + 1)
  46. query = "UPDATE bohater_przedmiot SET ilosc = " + nowa_ilosc + " WHERE bohaterid = " + bohaterid + " AND przedmiotid = " + przedmiotid + ";"
  47. result = db.query(query);
  48.  
  49. func zdejmij_przedmiot_ze_sklepu(sklepid, przedmiotid):
  50. # sprawdz czy przedmiot jest w sklepie
  51. # jezeli go nie ma, zwroc wartosc false
  52. var query = "select ilosc from sklep_przedmiot where sklepid = " + sklepid + " AND przedmiotid = " + przedmiotid + ";"
  53. var result = db.fetch_array(query);
  54.  
  55. if (not result or result.empty()):
  56. print("NIE MA PRZEDMIOTU")
  57. return false
  58.  
  59. var ilosc
  60.  
  61. for r in result:
  62. ilosc = r['ilosc']
  63.  
  64. var nowa_ilosc = str(ilosc - 1)
  65. print(nowa_ilosc)
  66. if int(nowa_ilosc) > 0:
  67. query = "UPDATE sklep_przedmiot SET ilosc = " + nowa_ilosc + " WHERE sklepid = " + sklepid + " AND przedmiotid = " + przedmiotid + ";"
  68. result = db.query(query);
  69. else:
  70. query = "DELETE FROM sklep_przedmiot WHERE sklepid = " + sklepid + " AND przedmiotid = " + przedmiotid +";"
  71. result = db.query(query)
  72. return true
  73.  
  74. func dodaj_przedmiot(nazwa, opis):
  75. # Insert new row
  76. var query = "INSERT INTO przedmiot (nazwa, opis) VALUES ('" + nazwa + "', '" + opis + "');";
  77. var result = db.query(query);
  78.  
  79. if (!result):
  80. print("Cannot insert data!");
  81. else:
  82. print("Data inserted into table.");
  83.  
  84. func usun_przedmiot(nazwa):
  85. # Insert new row
  86. var query = "DELETE FROM przedmiot WHERE nazwa = '" + nazwa + "';";
  87. var result = db.query(query);
  88.  
  89. if (!result):
  90. print("Nie udało się usunąć przedmiotu!");
  91. else:
  92. print("Przedmiot " + nazwa + " usunięty.");
  93.  
  94. func wyswietl_ekwipunek():
  95. # Get item list from db
  96. var przedmioty = db.fetch_array("""
  97. SELECT
  98. b.imie,
  99. p.nazwa,
  100. bp.ilosc
  101. FROM
  102. bohater b,
  103. przedmiot p,
  104. bohater_przedmiot bp
  105. WHERE
  106. b.bohaterid = bp.bohaterid
  107. AND p.przedmiotid = bp.przedmiotid""");
  108. if (not przedmioty or przedmioty.empty()):
  109. print("TABELA PUSTA, NIE WIEM CO SIE DZIEJE, WYCHODZE")
  110. return;
  111.  
  112. for przedmiot in przedmioty:
  113. # Create new item from database
  114. var item = {
  115. 'imie': przedmiot['imie'],
  116. 'nazwa': przedmiot['nazwa'],
  117. 'ilosc': przedmiot['ilosc']
  118. };
  119.  
  120. # Add to item list
  121. ekwipunek.append(item);
  122.  
  123. # Print all item
  124. for i in ekwipunek:
  125. print("Imie: ", i.imie, " nazwa: ", i.nazwa, " ilosc: ", i.ilosc);
  126.  
  127.  
  128. func wyswietl_przedmioty():
  129. lista_przedmiotow = []
  130. # Get item list from db
  131. var przedmioty = db.fetch_array("SELECT * FROM przedmiot");
  132. if (not przedmioty or przedmioty.empty()):
  133. print("TABELA PUSTA, NIE WIEM CO SIE DZIEJE, WYCHODZE")
  134. return;
  135.  
  136. for przedmiot in przedmioty:
  137. # Create new item from database
  138. var item = {
  139. 'przedmiotid': przedmiot['przedmiotid'],
  140. 'nazwa': przedmiot['nazwa'],
  141. 'opis': przedmiot['opis']
  142. };
  143.  
  144. # Add to item list
  145. lista_przedmiotow.append(item);
  146.  
  147. # Print all item
  148. for i in lista_przedmiotow:
  149. print("Nazwa: ", i.nazwa);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement