[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-games-devel
Subject:    Re: [Kde-games-devel] Review Request 114871: [knavalbattle] To enable two phase place ships,
From:       "Jaime Torres Amate" <jtamate () gmail ! com>
Date:       2014-01-16 12:24:07
Message-ID: 20140116122407.2618.84369 () probe ! kde ! org
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/114871/
-----------------------------------------------------------

(Updated Jan. 16, 2014, 12:24 p.m.)


Status
------

This change has been marked as submitted.


Review request for KDE Games and Roney Gomes.


Repository: knavalbattle


Description
-------

This patch depends on the utilities for multiple ships patch (only because of the \
canAddShipsOfShize(size) method). There are now two phases in the game, also used in \
the seaview status, placing and playing. Placing can be restarted several times \
without disturbing the other player. Before:
  controller called entity start and waited for 2 answers.
Now: 
  controller calls entity startPlacing and waits for 2 ready() signals, then it calls \
start and waits for 2 more answers.  if a player can not finish placing its ships, a \
restartPlacingShips() signal is emited (and not the ready() signal). It reaches \
playfield where a messagebox is displayed to restart or abort the game (missing, I'm \
not sure about this option).   This patch only affects the human player (the AI, so \
fast, will retry automatically until a good placement is reached).  For the network \
player, it assumes the other player has finished placing its ships, but still needs \
another message (received when the other player finishes placing ships) to start \
shooting.


Another possibility is to make use of an Undo function (but I always played in paper \
with pen, not pencil)


Diffs
-----

  src/aientity.h d8fc057 
  src/aientity.cpp b085786 
  src/controller.h 0165b02 
  src/controller.cpp df44ff4 
  src/entity.h fa45a35 
  src/mainwindow.cpp 42e04b4 
  src/networkentity.h bfcfdf4 
  src/networkentity.cpp 6609022 
  src/playerentity.h aae134e 
  src/playerentity.cpp 230f1ec 
  src/playfield.h 431b740 
  src/playfield.cpp 1ea0955 
  src/seaview.h b3099be 
  src/seaview.cpp 34d44c3 
  src/uientity.h 952003b 
  src/uientity.cpp e629879 

Diff: https://git.reviewboard.kde.org/r/114871/diff/


Testing
-------

Finally, it works in local and remote games.
The normal game workflow can be tested without any modification.
The restart workflow can be tested with a little modification in the \
canAddShipsOfShize(size) to return false sometimes. I'm reworking the multiple ships \
patch to make it much more flexible in the number of ships, their size and the board \
size for network games.


Thanks,

Jaime Torres Amate


[Attachment #5 (text/html)]

<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 \
solid;">  <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/114871/">https://git.reviewboard.kde.org/r/114871/</a>
  </td>
    </tr>
   </table>
   <br />



<table bgcolor="#e0e0e0" width="100%" cellpadding="8" style="border: 1px gray \
solid;">  <tr>
  <td>
   <h1 style="margin-right: 0.2em; padding: 0; font-size: 10pt;">This change has been \
marked as submitted.</h1>  </td>
 </tr>
</table>
<br />


<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" \
style="background-image: \
url('https://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); \
background-position: left top; background-repeat: repeat-x; border: 1px black \
solid;">  <tr>
  <td>

<div>Review request for KDE Games and Roney Gomes.</div>
<div>By Jaime Torres Amate.</div>


<p style="color: grey;"><i>Updated Jan. 16, 2014, 12:24 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
knavalbattle
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">This patch depends on the utilities for multiple ships patch (only \
because of the canAddShipsOfShize(size) method). There are now two phases in the \
game, also used in the seaview status, placing and playing. Placing can be restarted \
several times without disturbing the other player. Before:
  controller called entity start and waited for 2 answers.
Now: 
  controller calls entity startPlacing and waits for 2 ready() signals, then it calls \
start and waits for 2 more answers.  if a player can not finish placing its ships, a \
restartPlacingShips() signal is emited (and not the ready() signal). It reaches \
playfield where a messagebox is displayed to restart or abort the game (missing, \
I&#39;m not sure about this option).   This patch only affects the human player (the \
AI, so fast, will retry automatically until a good placement is reached).  For the \
network player, it assumes the other player has finished placing its ships, but still \
needs another message (received when the other player finishes placing ships) to \
start shooting.


Another possibility is to make use of an Undo function (but I always played in paper \
with pen, not pencil)</pre>  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">Finally, it works in local and remote games. The normal game workflow \
can be tested without any modification. The restart workflow can be tested with a \
little modification in the canAddShipsOfShize(size) to return false sometimes. \
I&#39;m reworking the multiple ships patch to make it much more flexible in the \
number of ships, their size and the board size for network games. </pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>src/aientity.h <span style="color: grey">(d8fc057)</span></li>

 <li>src/aientity.cpp <span style="color: grey">(b085786)</span></li>

 <li>src/controller.h <span style="color: grey">(0165b02)</span></li>

 <li>src/controller.cpp <span style="color: grey">(df44ff4)</span></li>

 <li>src/entity.h <span style="color: grey">(fa45a35)</span></li>

 <li>src/mainwindow.cpp <span style="color: grey">(42e04b4)</span></li>

 <li>src/networkentity.h <span style="color: grey">(bfcfdf4)</span></li>

 <li>src/networkentity.cpp <span style="color: grey">(6609022)</span></li>

 <li>src/playerentity.h <span style="color: grey">(aae134e)</span></li>

 <li>src/playerentity.cpp <span style="color: grey">(230f1ec)</span></li>

 <li>src/playfield.h <span style="color: grey">(431b740)</span></li>

 <li>src/playfield.cpp <span style="color: grey">(1ea0955)</span></li>

 <li>src/seaview.h <span style="color: grey">(b3099be)</span></li>

 <li>src/seaview.cpp <span style="color: grey">(34d44c3)</span></li>

 <li>src/uientity.h <span style="color: grey">(952003b)</span></li>

 <li>src/uientity.cpp <span style="color: grey">(e629879)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/114871/diff/" style="margin-left: \
3em;">View Diff</a></p>







  </td>
 </tr>
</table>




  </div>
 </body>
</html>



_______________________________________________
kde-games-devel mailing list
kde-games-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-games-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic