Просмотр исходного кода

Merge branch 'master' of git.unistra.fr:tompeur/ecr19-t3-e

klapczynski 6 лет назад
Родитель
Сommit
07e0eb617d
11 измененных файлов с 262 добавлено и 1 удалено
  1. 12 0
      TODO.md
  2. 12 0
      css/style.css
  3. 31 0
      css/styleacc.css
  4. 14 0
      html/index.html
  5. 74 0
      html/jeu.html
  6. 11 0
      html/tuto.html
  7. 30 0
      js/events.js
  8. 19 0
      js/interface.js
  9. 1 1
      js/laws.js
  10. 34 0
      js/main.js
  11. 24 0
      js/utils.js

+ 12 - 0
TODO.md

@@ -0,0 +1,12 @@
+# Decomposition des fichiers js
++ main.js : lancement du jeu
++ utils.js : fonctions utilitaires
++ laws.js : lois
++ events.js : evenements
++ interface.js : mises a jour de l'interface
+
+# Creation de dossiers 
++ HTML
++ JS
++ CSS
++ Ressources (images, etc)

+ 12 - 0
css/style.css

@@ -0,0 +1,12 @@
+body {
+	display: flex;
+}
+
+.flexRow {
+	display: flex;
+	flex-direction: row;
+}
+
+#topNavBar {
+	
+}

+ 31 - 0
css/styleacc.css

@@ -0,0 +1,31 @@
+*{
+    margin: 0;
+    padding: 0;
+}
+
+div
+{
+    display: flex;
+    flex-direction: column;
+    border: solid;
+    width: 50%;
+    height: 200px;
+    border-width: thin;
+    box-sizing: border-box;
+    justify-content: center;
+    align-items: center;
+
+    position: absolute;
+    top: 0;
+    bottom: 0;
+    left: 0;
+    right: 0;
+    margin: auto;
+}
+button
+{
+    width: 8em;
+    margin: 2em;
+    background-color: aquamarine;
+    border-color: black;
+}

+ 14 - 0
html/index.html

@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <title>Accueil</title>
+        <link rel="stylesheet" type="text/css" href="styleacc.css">
+    </head>
+
+    <body>
+        <div>
+             <button onclick="location.href = 'jeu.html';">Nouvelle partie</button>
+             <button onclick="location.href = 'tuto.html';">Tutoriel</button>
+        </div>
+    </body>
+</html>

+ 74 - 0
html/jeu.html

@@ -0,0 +1,74 @@
+<!DOCTYPE html>
+<html>
+	<head>
+		<title>Tompeur</title>
+		<link rel="stylesheet" type="text/css" href="../css/style.css">
+		<meta lang="fr" charset="utf-8">
+	</head>
+	<body>
+		<!-- Barre de navigation -->
+		<div id="topNavBar" class="flexRow">
+
+			<!-- Le tour de jeu actuel -->
+			<div id="tour" class="flexRow">
+				<p>Tour : </p>
+				<p id="tourVal">0</p>
+			</div>
+
+			<!-- Les indicateurs -->
+			<div id="lsIndics" class="flexRow">
+
+				<div class="indicateur flexRow"> <!-- un indicateur particulier -->
+					<p>Crime : </p>
+					<p id="crime">0</p>
+				</div>
+
+				<div class="indicateur flexRow">
+					<p>Religion : </p>
+					<p id="religion">0</p>
+				</div>
+
+				<div class="indicateur flexRow">
+					<p>Economie : </p>
+					<p id="economie">0</p>
+				</div>
+
+				<div class="indicateur flexRow">
+					<p>Noblesse : </p>
+					<p id="noblesse">0</p>
+				</div>
+
+				<div class="indicateur flexRow">
+					<p>Peuple : </p>
+					<p id="peuple">0</p>
+				</div>
+
+			</div>
+		</div>
+
+		<!-- Liste des lois votées -->
+		<div id="lsLois">
+			<!-- Les lois seront insérées ici dynamiquement par le javascript -->
+		</div>
+		<!-- Fenetre principale -->
+		<div id="main">
+			<div id="evenement">
+				
+			</div>
+			<div id="lsChoixLois">
+				<div class="choixLoi" id="choixLoi1">
+
+				</div>
+				<div class="choixLoi" id="choixLoi2">
+
+				</div>
+			</div>
+		</div>
+
+	</body>
+	<script type="text/javascript"  src="../js/laws.js"></script>
+	<script type="text/javascript"  src="../js/events.js"></script>
+	<script type="text/javascript"  src="../js/utils.js"></script>
+	<script type="text/javascript"  src="../js/interface.js"></script>
+	<script type="text/javascript"  src="../js/main.js"></script>
+</html>

+ 11 - 0
html/tuto.html

@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+    <html>
+        <head>
+            <title>Tutoriel</title>
+            <link rel="stylesheet" type="text/css" href="styletuto.css">
+        </head>
+
+        <body>
+            <h1>A faire...</h1>
+        </body>
+    </html>

+ 30 - 0
js/events.js

@@ -0,0 +1,30 @@
+const events = [
+    {
+        "nom" : "nom",
+        "description" : "Description précise de l'évènement'",
+        "lois" : [
+            {
+                "id": 0,
+                "nom": "nomloi1",
+                "descriptions": [
+                    "desc1",
+                    "desc2",
+                    "desc3"
+                ],
+                "effets": {"cri": 0, "rel": 0, "eco": 0, "nob": 0, "peu": 0},
+                "niveau": 0
+            },
+            {
+                "id": 1,
+                "nom": "nomloi2",
+                "descriptions": [
+                    "desc1",
+                    "desc2",
+                    "desc3"
+                ],
+                "effets": {"cri": 0, "rel": 0, "eco": 0, "nob": 0, "peu": 0},
+                "niveau": 0
+            }
+        ]
+    }
+]

+ 19 - 0
js/interface.js

@@ -0,0 +1,19 @@
+/* 
+ * majIndics : met a jour les valeurs des indicateurs sur l'interface
+ */
+function majIndics() { 
+    document.querySelector("p#crime").innerHTML = indics[0];
+    document.querySelector("p#religion").innerHTML = indics[1];
+    document.querySelector("p#economie").innerHTML = indics[2];
+    document.querySelector("p#noblesse").innerHTML = indics[3];
+    document.querySelector("p#peuple").innerHTML = indics[4];
+}
+
+/* 
+ * afficherEvenement : prends un evenement en parametre et affiche
+ * se sdifferentes infos dans la fenetre d'evenements 
+ * et ses lois associées dans la fenetre des lois
+ */
+function afficherEvenement(event) {
+
+}

+ 1 - 1
laws.json → js/laws.js

@@ -1,4 +1,4 @@
-[
+const laws = [
     {
         "id": 0,
         "nom": "Loi financement culte",

+ 34 - 0
js/main.js

@@ -0,0 +1,34 @@
+let indics = [0, 0, 0, 0, 0]; // Crime Religion Economie Noblesse Peuple 
+let body = document.body;
+
+
+
+
+/* init : mets en place les valeur initiales des indicateurs
+ * et du tour
+ *
+ */
+function init() {
+    let divIndics = document.getElementById("lsIndics");
+    
+    for(let i = 0; i < indics.length; i++) {
+        indics[i] = getRndInteger(20,80);
+    }
+    majIndics();
+    document.querySelector("p#tourVal").innerHTML = "1";
+}
+
+
+
+function main() {
+    init();
+    let lost = false;
+    let tour = 1;
+    
+    //let event = getEvent(); 
+    //afficherEvenement(event);
+    
+     
+}
+
+main();

+ 24 - 0
js/utils.js

@@ -0,0 +1,24 @@
+/* aPerdu : retourne vrai si le joueur a perdu
+ * c'est à dire si un des indicateurs n'ets plus compris entre 0 et 100
+ */
+function aPerdu() {     
+    for( i in indics) {
+        if (i <=0 || i >=100) {
+            return true;
+        }
+    }
+    return false;
+}
+
+/*
+ * getRndInteger : obtient un entier aleatoire entre min et max
+ */
+function getRndInteger(min, max) {
+    return Math.floor(Math.random() * (max - min) ) + min;
+}
+
+/* getEvent : 
+ */
+function getEvent() {
+    
+}