From 3289eab1f48546126b05fc03a89bdb33e21c000b Mon Sep 17 00:00:00 2001 From: eduard ermakov Date: Sun, 14 Jul 2024 17:34:23 +0300 Subject: [PATCH] fix some bugs --- .../ShipCraft/Переделка/.idea/misc.xml | 2 +- .../ShipCraft/Переделка/.idea/workspace.xml | 23 ++++-------------- .../ShipCraft/Переделка/.idea/Переделка.iml | 2 +- .../ShipCraft/Переделка/ShipField.py | 3 +-- .../__pycache__/GameMode.cpython-39.pyc | Bin 649 -> 645 bytes .../__pycache__/ShipDirection.cpython-39.pyc | Bin 659 -> 655 bytes .../__pycache__/ShipField.cpython-39.pyc | Bin 7048 -> 7193 bytes .../__pycache__/ShipMode.cpython-39.pyc | Bin 635 -> 631 bytes .../__pycache__/ShipView.cpython-39.pyc | Bin 591 -> 624 bytes .../__pycache__/ShootResult.cpython-39.pyc | Bin 440 -> 436 bytes HNS/Excercises/ShipCraft/Переделка/main.py | 23 ++++++++++-------- 11 files changed, 21 insertions(+), 32 deletions(-) diff --git a/HNS/Excercises/ShipCraft/Переделка/.idea/misc.xml b/HNS/Excercises/ShipCraft/Переделка/.idea/misc.xml index a6218fe..94888fc 100644 --- a/HNS/Excercises/ShipCraft/Переделка/.idea/misc.xml +++ b/HNS/Excercises/ShipCraft/Переделка/.idea/misc.xml @@ -3,5 +3,5 @@ - + \ No newline at end of file diff --git a/HNS/Excercises/ShipCraft/Переделка/.idea/workspace.xml b/HNS/Excercises/ShipCraft/Переделка/.idea/workspace.xml index 112d8aa..e9563b6 100644 --- a/HNS/Excercises/ShipCraft/Переделка/.idea/workspace.xml +++ b/HNS/Excercises/ShipCraft/Переделка/.idea/workspace.xml @@ -5,7 +5,9 @@ + + @@ -46,13 +48,13 @@ "RunOnceActivity.OpenProjectViewOnStart": "true", "RunOnceActivity.ShowReadmeOnStart": "true", "git-widget-placeholder": "main", - "last_opened_file_path": "C:/Users/Eduardo/Documents/Программирование с Артуром/HNS/hnc-eduard/HNS/Excercises/ShipCraft/Переделка" + "last_opened_file_path": "F:/hnc-eduard/HNS/Excercises/ShipCraft/Переделка", + "settings.editor.selected.configurable": "com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable" } }]]> - + - - - - - - - - - file://$PROJECT_DIR$/main.py - 155 - - - - \ No newline at end of file diff --git a/HNS/Excercises/ShipCraft/Переделка/.idea/Переделка.iml b/HNS/Excercises/ShipCraft/Переделка/.idea/Переделка.iml index d0876a7..8388dbc 100644 --- a/HNS/Excercises/ShipCraft/Переделка/.idea/Переделка.iml +++ b/HNS/Excercises/ShipCraft/Переделка/.idea/Переделка.iml @@ -2,7 +2,7 @@ - + \ No newline at end of file diff --git a/HNS/Excercises/ShipCraft/Переделка/ShipField.py b/HNS/Excercises/ShipCraft/Переделка/ShipField.py index e356a59..93ea149 100644 --- a/HNS/Excercises/ShipCraft/Переделка/ShipField.py +++ b/HNS/Excercises/ShipCraft/Переделка/ShipField.py @@ -28,7 +28,6 @@ class ShipField: def from_json(self, obj): self.field = obj['field'] self.ships = obj['ships'] - ShipField.field_size = obj['field_size'] self.field_mode = ShipMode.from_string(obj['field_mode']) self.ship_size = obj['ship_size'] self.ship_direction = ShipDirection.from_string(obj['ship_direction']) @@ -57,7 +56,7 @@ class ShipField: elif self.field_mode == ShipMode.SHOOT: shoot_result = self.shoot(row, col) - return self.shoot(row, col) == ShootResult.EMPTY + return shoot_result == ShootResult.EMPTY return False diff --git a/HNS/Excercises/ShipCraft/Переделка/__pycache__/GameMode.cpython-39.pyc b/HNS/Excercises/ShipCraft/Переделка/__pycache__/GameMode.cpython-39.pyc index a3548ccc476247290e93390c2460ec565b7d9635..0da48c4a0cb9cc72f63b2b88568773b446b173c9 100644 GIT binary patch delta 32 kcmeBVZDr+7U9Y9?A(-b3naR&5cM@s^kOWA>{(9kl>cnUf{|JBm{^{#sANSxLJjb=F30xKjweU z?|bJTT!>^Nk&p!6j|Y71;r+;C^2PmcK1=9l^ntrlCT4W%gZj{2>0^@V(ubF%WU{W4 zU70xC@4MC%1HC^}0I4ai`939Y^51-2HCuk9REe&{rCm~$G#}8uxCE4H`vpfm zW!h$zZ5Ygr6mNBun=8vsD7S9pHZ*I!u;tJ^e-faig?|+o*O-hl>fFN3<<+E*xtU<* z9Y@KTrA*jbH%(h(hP7R?y^;E}IlEw%$1p6^lL(c=But`mH!P$=a{VlQgVcI}+3<+< z;`R&zmW+u~v;yU*EL+YSZZ$=5MVVD(h1Lp2N!P5xj^Tu^F5a5YET)%dZm>aM?y16W zmPBi35k^pjQP?99T3~NbN+Vg#_XP)W*1-wdPgN? z;>tNZRlN1{7{VaGHlOQh3sPhJ@3vDN9`~@7_v^#$A#xjgDz%(c-QqNq zMbsizzc*IwRnY<&U(P6%Jnplrz&_xgbUYnG2lfs-QLSW4+lE*6GD!T)@5DYhw@1>D z>jdoG=QWL#2<;kDo&YYv*{^)4(@Na{3KTs_m_VJAavQVFe7W{8RK2mhsW zJRuSdiufUoON_ulz8~wY!E~2#nlo{w;`)jM%N-OaxamYK!`9q6uxaYXKOpRmWI~A# z298hO>28$uxNweu^nV}JrT$ZwLI%ZqZ&Ya>1Vq9`H$fG}lN#ZFbq~foDVqXOned7D zJ-_$`YUBIyiD^MzM=O{?7#rR2&+(r;Kbv!AxneL|vrP?uVxoLBF-E%iyNQ9CcpF`4 zD2{L%;bnwLgdT(e1bo2^-x=#exPl-iE4B^0jDW>u3kYchbleGBcGfQBHVu2-)Y%H2 zH{t`T=FUrosiCkeoT`{)+DZd7Oj~G-QktNz(q^hs1$Ip|1b==Sq+yu|JxJdzG>mn3 cn^06&Wc%17%g5Z<@;t~VPy&QG1hZdF>E9}F~gLaK()mP9yCQ(C9AsR{;Zpjej;8 zZvzUELIsE3Q1uRoTO(DGA_NjLh@YMjH#oCgk>J!5T;RgY+Ypl_c;(r7Z+_m)H#2WP zp1OY_QBEXu34dp!m6eGHiBH+12aiAMwNuuRHT;3}J}dQGBe$gNXsgC{WLDx`(W}X0 zsQ<@RB!%g><{gil(GRz;;c|;vEG=zG263|B7;=%cRJ zG$B#D;_EApU9*g)vuQ&Y?IwxzAj#@NZCmJpLfZpGqDV@eE8y0R zrUy==@-MpxDF|a3`jGb{?(!N?Rsl)TUWc$bJ zlmDQ6J}P`g9nY?Zopl;U#r8;I7(;wlo$jI-D8^Ut-(2TU)ZFW}Eon`~e{4enX_yOll0G2J_@Ky&6b5|B(=Cd#sp^`*E{om%*r)p=twk@q4i$mgKv!-0WUt zKVfj+_9LcS3kRx}P0w)~If|+qiNrKH&f=^~9>jl~wa#mo*!F1@1b9*k@HCNOA_OW3 zc*)pTpxmg~L9wWgK}8RWQ=4 zi0CCQ>)#zad!Q-7IpniZ$nl@`^a)WA<{Y+`fWp7o>h8S9GNM-wM;(Nl+h3SJ=5;hupJ+$**E665k2;aD^!;+4>`ifqjO$Xz?P7keuuz=K3ygh*ntr{c%w4~+^hPO`pS?aiKbJ>f zLg!tiNJ3dWgL}KY+Ebm%%0-yM721hZ4k`zEvdbP}OsRdzGrgzzXT9It2qD|H7xPP4 z_z82>Hmk;R%{8mG1>@v%;t0poU*ERA>eJaBs&`>2s{~-Sor)MKvaA};lln-MtQ0lv zTDa|D4#hw6!PNJo6xiPWwV-U2Yj^E1JTs`_bG857^Kc4T#3qBUpzALaCz75gE(Gk$ zxc3YHqQ6-eHz8r^Fwp@2eup9=?znzbx1*<16&anahTV{A$3_?FSN)vgC$n!)diHPfpW)o<3fciTa!C~S=0yD%>ePDqIecXUz z_Tx>j>^WxL_EudBUZeeXYJ$VB#i}H}JQ_-yEv_ZB6uvXsgqGA4d#1OSM;2U`FD delta 36 pcmey)@|%S_k(ZZ?0SMkQrf=jnXXNq(vfZp=+%roydob!V0sx^M2vYz6 diff --git a/HNS/Excercises/ShipCraft/Переделка/__pycache__/ShipView.cpython-39.pyc b/HNS/Excercises/ShipCraft/Переделка/__pycache__/ShipView.cpython-39.pyc index 3ff97a5f74b2062ff7184faf6ba9ac9e22484071..6ef88dc2626d8f9ac0264bee3e6b026fbfbade50 100644 GIT binary patch delta 239 zcmX@l@_~gfk(ZZ?0SHdDOir_AoXEGzodv{&0uY-Ch@FABSOrMbFxD`{Gt@8vNyZYU zW(FY5T*C|`SyDhUtSJn^44O=SZklWpKk1v?Vol9U&8@t}mY7_US(d8Fa*L%nH7Biz z6=+fs8;IZl5-S;sxPjDHS0LeLHQALhh#TxAMm8Yim^_csPLvm<7NiJ?;F_E)VXR?@XQ*KUl8hxx z%?v=AIfWsZL6gx>lV#$6eHBgSTP($?IcY_#K-EQTKw>3B5hsxP>Io#=tYX|VOC~2V z2C;*r7#P_m?`O0VnOYWV=~SmS&s_0B&vu!2kdN delta 35 ocmdnOyn~rLk(ZZ?0SLBSNZZKG#>nLZWV>0#xM!A37H6Cb0FMC(P5=M^ diff --git a/HNS/Excercises/ShipCraft/Переделка/main.py b/HNS/Excercises/ShipCraft/Переделка/main.py index bb835ab..bff55d1 100644 --- a/HNS/Excercises/ShipCraft/Переделка/main.py +++ b/HNS/Excercises/ShipCraft/Переделка/main.py @@ -44,18 +44,19 @@ def colorize(view): field = view.ship_field for i in range(len(field.field)): bg = "white" - if field[i] == "1" and not view.enemy: + if field.field[i] == "1" and not view.enemy: bg = 'pink' - if field[i] == "\\": - bg = 'red' - if field[i] == "0": + if field.field[i] == "\\": + bg = 'grey' + if field.field[i] == "0": bg = 'black' - if field[i] == "p": + if field.field[i] == "p": bg = 'blue' - if "+" in field[i] and view.enemy: - bg = 'orange' - if "r" in field[i]: + if field.field[i] == "r": bg = 'red' + if "+" in field.field[i] and view.enemy: + bg = 'orange' + view.buttons[i].configure(bg=bg) refresh_remaining_ships_label(view) @@ -74,8 +75,9 @@ def left_button_click(view, row, col): action_result = view.ship_field.action(row, col) if action_result and view_enemy and game_mode == GameMode.Battle: - enemy_shoot_result = ShootResult.UNDEFINED # Ход соперника + enemy_shoot_result = ShootResult.UNDEFINED + while enemy_shoot_result != ShootResult.EMPTY: my_row = random.randint(0, ShipField.field_size) my_col = random.randint(0, ShipField.field_size - 1) @@ -158,6 +160,7 @@ def next_game_mode(): update_game_mode() + def update_game_mode(): global game_mode @@ -193,7 +196,7 @@ def update_game_mode(): savebutton.grid(column=start_column_my_field, row=load_button_row, columnspan=4) loadbutton.grid(column=start_column_my_field + 6, row=load_button_row, columnspan=4) - start_button.grid(column=start_column_my_field, row=load_button_row + 1, columnspan=4) + start_button.grid(column=start_column_my_field + 11, row=load_button_row, columnspan=4) load_game_button.grid_forget() exit_button.grid_forget()