Es posible que haya pasado más tiempo pensando cuales eran los posibles caminos a seguir que programando. Eso que dijo RayR:
"Lo importante es que te propongas un proyecto pequeño a la vez y lo termines, para después ir subiendo la complejidad de forma gradual."
Meter cosas a un programa base es más complejo que meter 1, volver al programa base, meter otra, y luego meter ambas a la vez. Ahora ¿cuántas cosas se pueden agregar o complicar en un programa? He pensado en eso. ¿Y cuales son las primeras que uno debe enfrentar, cómo saberlo a priori? También. Pero no tengo buenas respuestas a esas preguntas.
A mí lo que más me interesó fue la programación de videojuegos, la búsqueda del camino más corto (o de la serie más corta de acciones en pos de cumplir una condición, como por ejemplo ganar en un juego, sobre eso es que pensé) y la generación de diversas cosas (desde niño en realidad, primero hacer todas las posibles construcciones con ladrillitos básicos de Lego, luego con viejos trozos de pistas de autitos eléctricos, hacer todas las posibles pistas).
Si más bien lo haces para tener un buen trabajo en el futuro, supongo que haces bien, si no se te ocurre algo mejor. Yo no tengo títulos que valgan y no podría trabajar de programador porque no sé sobre las cosas que se exige saber y porque nunca pude hacer algo grande o útil, siempre me he cansado antes, me es muy difícil, pero si te enseñan cómo hacer las cosas supongo que se facilita muchísimo. Por ejemplo este código llegó un punto en que "me sobrepasó", es decir, cada vez me resultaba más difícil agregar cosas, me tomé un descanso, demasiado largo porque seguía cansado, y luego ya no supe bien en qué estaba:
Código
Pero creo que soy un caso atípico, creo que alguna manera tienen los que saben, de hacer algo como eso de modo sencillo.
fscommand ("fullscreen", "true"); Player.Facing = 1; Player.Attacking = 0; Player.Action = 1; // 0 crouching, 0.5 startingjump, 1 nothing, 2 walking, 3 falling, 3.5 minjump, 4 jumping. // ///////////////////////////////////////////// // ////////////////// Bond /////////////////// // ///////////////////////////////////////////// function PersControl () { if (Player.Action == 2) { // Si el personaje está caminando. if (Key.isDown(65)) { // Si se presiona A. StartingJump(); } else if (Key.isDown(83)) { // Si se presiona S. Attack(); } else if (Key.isDown(40)) { // Si se presiona abajo. Crouch(); } else if (Key.isDown(39)) { // Si se presiona derecha. FaceRight(); Player._x = Player._x+0.9; } else if (Key.isDown(37)) { // Si se presiona izquierda. FaceLeft(); Player._x = Player._x-0.9; } else { Quiet(); } //FALTA THROW } else if (Player.Attacking == 0) { // Si el personaje no está atacando. if (Player.Action == 1) { // Si el personaje está en reposo. if (Key.isDown(65)) { // Si se presiona A. StartingJump(); } else if (Key.isDown(83)) { // Si se presiona S. Attack(); } else if (Key.isDown(40)) { // Si se presiona abajo. Crouch(); } else if (Key.isDown(39)) { // Si se presiona derecha. FaceRight(); Player._x = Player._x+0.9; Walk(); } else if (Key.isDown(37)) { // Si se presiona izquierda. FaceLeft(); Player._x = Player._x-0.9; Walk(); } //FALTA THROW } else if (Player.Action == 3) { // Si el personaje está cayendo. Player.SpeedY = Player.SpeedY+0.1; MovingJump(); if (Player._y>=554) { // Si el personaje toca el suelo. Player._y = 554; // Acá no debería haber Quiet sino FallEnd o... // depende de la velocidad de la caída??? Quiet(); } //FALTA: AT, THROW } else if (Player.Action == 4) { // Si el personaje está saltando. Jump(); //FALTA: AT, THROW } else if (Player.Action == 0.5) { // Si el personaje está empezando a saltar. if (Key.isDown(39)) { // Si se presiona derecha. if (Player.Facing == -1) { Player.Facing = 1; } Player.SpeedX = 0.9; } else if (Key.isDown(37)) { // Si se presiona izquierda. if (Player.Facing == 1) { Player.Facing = -1; } Player.SpeedX = -0.9; } else { Player.SpeedX = 0; } //FALTA: AT, THROW, Down? } else if (Player.Action == 0) { // Si el personaje está agachado. if (Key.isDown(40)) { // Si se presiona abajo. if (Key.isDown(65)) { // Si se presiona A. StartingJump(); } else if (Key.isDown(83)) { // Si se presiona S. Player.Attacking = 1; Player.gotoAndPlay(124); } } else { Quiet (); } } else if (Player.Action == 3.5) { // Si el personaje está saltando pero aún no llegó a cierta altura. Player.SpeedY = Player.SpeedY+0.1; if (Player.SpeedY<-3) { MovingJump(); } else { // Si el personaje llegó a cierta altura (y perdió cierta velocidad). Player.Action = 4; Jump(); } //FALTA: AT, THROW??? } //¿FALTA: AT, THROW, AG? } } //JUMP, AG WHILE STARTING AT? AFTER? //AG // Otras funciones. function StartingJump () { Player.gotoAndPlay(96); Player.Action = 0.5; } function MovingJump () { Player._x = Player._x+Player.SpeedX; Player._y = Player._y+Player.SpeedY; } function MinJump () { Player.Action = 3.5; Player.SpeedY = -4; MovingJump(); } function Jump () { if (Key.isDown(65)) { // Si se presiona A. Player.SpeedY = Player.SpeedY+0.1; if (Player.SpeedY>=0) { // Si el personaje comienza a caer. Fall(); } } else { // Si se suelta A. Player.SpeedY = 0.1; Fall(); } MovingJump(); } function Fall () { Player.Action = 3; Player.play(); } function Walk () { Player.gotoAndPlay(35); Player.Action = 2; } function Attack () { Player.gotoAndPlay(2); Player.Attacking = 1; Player.Action = 1; } function FaceRight () { if (Player.Facing == -1) { Player.Facing = 1; Player._xscale = 100; } } function FaceLeft () { if (Player.Facing == 1) { Player.Facing = -1; Player._xscale = -100; } } function Crouch () { Player.gotoAndStop(96); Player.Action = 0; } function Quiet () { Player.gotoAndStop(1); Player.Action = 1; } //Player.SpeedX = 0.9*Player.Facing; //Jump();
Repito, si te enseñan no creo que tengas mucho problema.
Ánimo++.