From 58ec0ada47fe8a07e4fdf5bd0bb902228c04b8e1 Mon Sep 17 00:00:00 2001 From: Carlos Date: Thu, 2 Jul 2026 04:32:25 +0200 Subject: [PATCH] feat: migrate TikTakToe, ExpedicaoGold, HumanCity, Aurea, TerraVerse into 1000apps --- pages/apps/aurea/index.js | 11 +++++ pages/apps/expedicao/index.js | 11 +++++ pages/apps/humancity/index.js | 11 +++++ pages/apps/terraverse/index.js | 11 +++++ pages/apps/tictactoe/index.js | 83 ++++++++++++++++++++++++++++++++++ pages/dashboard.jsx | 10 ++-- 6 files changed, 134 insertions(+), 3 deletions(-) create mode 100644 pages/apps/aurea/index.js create mode 100644 pages/apps/expedicao/index.js create mode 100644 pages/apps/humancity/index.js create mode 100644 pages/apps/terraverse/index.js create mode 100644 pages/apps/tictactoe/index.js diff --git a/pages/apps/aurea/index.js b/pages/apps/aurea/index.js new file mode 100644 index 0000000..8c4ed3e --- /dev/null +++ b/pages/apps/aurea/index.js @@ -0,0 +1,11 @@ +export default function Aurea() { + return ( +
+
👑
+

Aurea

+

O Império Começa Aqui

+

Simulador de vida onde cada escolha te leva mais perto da riqueza. Construa impérios, domine o mercado.

+ Em Breve +
+ ) +} \ No newline at end of file diff --git a/pages/apps/expedicao/index.js b/pages/apps/expedicao/index.js new file mode 100644 index 0000000..8caa29a --- /dev/null +++ b/pages/apps/expedicao/index.js @@ -0,0 +1,11 @@ +export default function ExpedicaoGold() { + return ( +
+
🗺️
+

Expedição Gold

+

Conquiste o Ouro do Mundo

+

Expedições terrestres, marítimas, espaciais e espirituais. Cada jornada é única. Cada conquista, sua.

+ Em Breve no 1000Apps +
+ ) +} \ No newline at end of file diff --git a/pages/apps/humancity/index.js b/pages/apps/humancity/index.js new file mode 100644 index 0000000..a16d07d --- /dev/null +++ b/pages/apps/humancity/index.js @@ -0,0 +1,11 @@ +export default function HumanCity() { + return ( +
+
🏙️
+

Human City

+

Simule. Construa. Viva.

+

Simulação de vida estilo The Sims. Crie personagens, construa cidades, escreva sua história.

+ Em Desenvolvimento +
+ ) +} \ No newline at end of file diff --git a/pages/apps/terraverse/index.js b/pages/apps/terraverse/index.js new file mode 100644 index 0000000..e114099 --- /dev/null +++ b/pages/apps/terraverse/index.js @@ -0,0 +1,11 @@ +export default function TerraVerse() { + return ( +
+
🌍
+

TerraVerse

+

O Novo Mundo te Espera

+

Game de realidade aumentada que vai revolucionar como você explora, conquista e monetiza o mundo real.

+ Em Breve +
+ ) +} \ No newline at end of file diff --git a/pages/apps/tictactoe/index.js b/pages/apps/tictactoe/index.js new file mode 100644 index 0000000..0edc4a2 --- /dev/null +++ b/pages/apps/tictactoe/index.js @@ -0,0 +1,83 @@ +import { useState } from 'react'; + +export default function TicTacToe() { + const [board, setBoard] = useState(Array(9).fill(null)); + const [xIsNext, setXIsNext] = useState(true); + const winner = calculateWinner(board); + const status = winner + ? `Winner: ${winner}` + : `Next player: ${xIsNext ? 'X' : 'O'}`; + + function handleClick(i) { + const boardCopy = [...board]; + if (winner || boardCopy[i]) return; + boardCopy[i] = xIsNext ? 'X' : 'O'; + setBoard(boardCopy); + setXIsNext(!xIsNext); + } + + function calculateWinner(squares) { + const lines = [ + [0, 1, 2], + [3, 4, 5], + [6, 7, 8], + [0, 3, 6], + [1, 4, 7], + [2, 5, 8], + [0, 4, 8], + [2, 4, 6], + ]; + for (let [a, b, c] of lines) { + if (squares[a] && squares[a] === squares[b] && squares[a] === squares[c]) { + return squares[a]; + } + } + return null; + } + + const renderSquare = (i) => ( + + ); + + const statusStyle = { + marginBottom: '1rem', + fontSize: '1.2rem', + }; + const boardStyle = { + display: 'grid', + gridTemplateColumns: 'repeat(3, 1fr)', + gap: '4px', + width: '300px', + margin: '0 auto', + }; + const squareStyle = { + background: '#fff', + border: '1px solid #999', + fontSize: '2rem', + width: '100%', + height: '80px', + display: 'flex', + alignItems: 'center', + justifyContent: 'center', + cursor: 'pointer', + }; + + return ( +
+

Tic Tac Toe

+
{status}
+
+ {[0, 1, 2, 3, 4, 5, 6, 7, 8].map(i => ( +
+ {renderSquare(i)} +
+ ))} +
+
+ ); +} \ No newline at end of file diff --git a/pages/dashboard.jsx b/pages/dashboard.jsx index fa0c320..f3c50ef 100644 --- a/pages/dashboard.jsx +++ b/pages/dashboard.jsx @@ -18,9 +18,13 @@ const ALL_APPS = [ { id: 7, name: "Cronômetro", desc: "Tempo e alarmes", path: "/apps/timer", icon: "⏱️", category: "utilidades", favorite: false }, // Games - { id: 8, name: "Jogo da Velha", desc: "Jogo clássico", path: "/apps/tictactoe", icon: "❌", category: "games", favorite: false }, - - // Ferramentas + { id: 8, name: "Jogo da Velha", desc: "Jogo da velha clássico 2 jogadores", path: "/apps/tictactoe", icon: "⭕", category: "games", favorite: false }, + { id: 14, name: "Expedição Gold", path: "/apps/expedicao", icon: "🗺️", category: "games", desc: "Expedições para conquistar ouro" }, + { id: 15, name: "Human City", path: "/apps/humancity", icon: "🏙️", category: "games", desc: "Simulação de cidade estilo Sims" }, + { id: 16, name: "Aurea", path: "/apps/aurea", icon: "👑", category: "games", desc: "Simulador de vida e riqueza" }, + { id: 17, name: "TerraVerse", path: "/apps/terraverse", icon: "🌍", category: "games", desc: "Game de realidade aumentada" }, + + // Ferramentas { id: 9, name: "Editor Texto", desc: "Texto simples", path: "/apps/text-editor", icon: "📝", category: "ferramentas", favorite: false }, { id: 10, name: "Conversor Moedas", desc: "Câmbio em tempo real", path: "/apps/currency", icon: "💱", category: "ferramentas", favorite: false },