elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Temas
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23
81  Programación / Programación C/C++ / El verdadero uso de los punteros, Una herramienta de destrucción masiva.Si o no? en: 19 Junio 2012, 16:42 pm
Buenas estoy programando mi juego, y me he dado cuenta del potencial de los punteros creo, Aquí va mi explicación.

tengo 2 clases:
Héroe y Animación.

antes para tener la cantidad de animaciones que quisiera en Héroe tenia que crear un array.
animaciones[10].
ahora con un puntero hago que apunte a la animación que quiera.
Antes:
Código
  1. class heroe{
  2.    animacion a[10];
  3. };
Ahora:
Código
  1. class heroe{
  2.    animacion *a;
  3. };
Lo que hago ahora es definir las animaciones fuera, y apuntar a la que quiera cuando quiera.

un ejemplo :
Código
  1. GameAnimation GA1("data/ani-zombie1-right.txt");
  2. GameAnimation GA2("data/ani-zombie2-right.txt");
  3. GameAnimation GA3("data/ani-zombie3-right.txt");
  4. GameAnimation GA4("data/ani-zombie4-right.txt");
  5. GameAnimation GA5("data/ani-zombie5-right.txt");
  6. //h1.SetAnimation(ANIMACION QUE QUIERA); POR EJEMPLO
  7. h1.SetAnimation(GA3);
  8. //AHORA LA ANIMACION DE H1 ES GA3
  9. h1.SetAnimation(GA1);
  10. //AHORA LA ANIMACION DE H1 ES GA1

Bueno que me decís es este el buen uso de los punteros?




PD: Por qué GA1 lo leo como GAY ? xD
82  Programación / Programación C/C++ / Qué puntos en contra y a favor veis en esta forma de programar? en: 17 Junio 2012, 14:09 pm
Qué puntos en contra y a favor veis en esta forma de programar?
Pregunto por el archivo camara.cpp
area.hpp
Código
  1. #ifndef _AREAHPP_
  2. #define _AREAHPP_
  3. struct Area {
  4.    int x;
  5.    int y;
  6.    int w;
  7.    int h;
  8. };
  9. #endif
  10.  
camara.hpp
Código
  1. #ifndef _CAMARAHPP_
  2. #define _CAMARAHPP_
  3. #include "area.hpp"
  4. #include <iostream>
  5. using namespace std;
  6. class CamaraGame{
  7.    private:
  8.        Area CArea;
  9.        int LW;
  10.        int LH;
  11.    public:
  12.        CamaraGame(int _mw,int _mh,int _x,int _y,int _h,int _w);
  13.        bool Move(int x,int y);
  14.        bool ResizeLimit(int _lw,int _lh);
  15.        Area Get();
  16.  
  17.  
  18. };
  19. #endif
  20.  
camara.cpp
Código
  1. #include "camara.hpp"
  2. //
  3. CamaraGame::CamaraGame(int _mw,int _mh,int _x,int _y,int _w,int _h){
  4.    if(_x>=0)CArea.x=_x;
  5.    else {
  6.        CArea.x=0;
  7.        cout << "\nERROR CAMARA 0007: valor inferior a 0, se le asigna 0\n";
  8.    }
  9.    if(_y>=0)CArea.y=_y;
  10.    else {
  11.        CArea.y=0;
  12.        cout << "\nERROR CAMARA 0008: valor inferior a 0, se le asigna 0\n";
  13.    }
  14.    if(_w>=0)CArea.w=_w;
  15.    else {
  16.        CArea.w=0;
  17.        cout << "\nERROR CAMARA 0009: valor inferior a 0, se le asigna 0\n";
  18.    }
  19.    if(_h>=0)CArea.h=_h;
  20.    else {
  21.        CArea.h=0;
  22.        cout << "\nERROR CAMARA 0010: valor inferior a 0, se le asigna 0\n";
  23.    }
  24.    if(_mw>=0)LW=_mw;
  25.    else {
  26.        LW=0;
  27.        cout << "\nERROR CAMARA 0011: valor inferior a 0, se le asigna 0\n";
  28.    }
  29.    if(_mh>=0)LH=_mh;
  30.    else {
  31.        LH=0;
  32.        cout << "\nERROR CAMARA 0012: valor inferior a 0, se le asigna 0\n";
  33.    }
  34. };
  35. bool CamaraGame::Move(int _x,int _y){
  36.    if(_x<0){
  37.        _x=0;
  38.        cout << "\nERROR CAMARA 0003: valor inferior a 0, se le asigna 0\n";
  39.    }
  40.    if(_y<0){
  41.        _y=0;
  42.        cout << "\nERROR CAMARA 0004: valor inferior a 0, se le asigna 0\n";
  43.    }
  44.    if(_x+CArea.w>LW){
  45.        _x=LW-CArea.w;
  46.        cout << "\nERROR CAMARA 0005: valor superior a lo permitido se le asigna " << _x << "\n";
  47.    }
  48.    if(_y+CArea.h>LH){
  49.        _y=LH-CArea.h;
  50.        cout << "\nERROR CAMARA 0006: valor superior a lo permitido se le asigna " << _y << "\n";
  51.    }
  52.    CArea.x=_x;
  53.    CArea.y=_y;
  54.    return true;
  55. }
  56. bool CamaraGame::ResizeLimit(int _w,int _h){
  57.    if(_w>=0)LW=_w;
  58.    else {
  59.        LW=0;
  60.        cout << "\nERROR CAMARA 0001: valor inferior a 0, se le asigna 0\n";
  61.    }
  62.    if(_h>=0 )LH=_h;
  63.    else {
  64.        LH=0;
  65.        cout << "\nERROR CAMARA 0002: valor inferior a 0, se le asigna 0\n";
  66.    }
  67.    return true;
  68. }
  69.  
  70. Area CamaraGame::Get(){
  71.    return CArea;
  72. }
83  Foros Generales / Foro Libre / Libros de primero de bachillerato en pdf? en: 14 Junio 2012, 13:00 pm
Alguien tiene algún link para descargar estos libros en pdf? para echarle un vistazo.
84  Foros Generales / Foro Libre / Que materias de bachillerato debo coger? en: 11 Junio 2012, 12:19 pm
Que materias de modalidad debería de escoger en bachillerato para seguir después para el desarrollo de aplicaciones "videojuegos"

He mirado un poco y he pensado esto.
•   Dibujo técnico I y II
•   Física
•   Física y química
•   Matemáticas I y II
•   Química

Pero no se si se puede.

veis que hay "física" y "química" solas no sé, si se puede coger, si ya tienes cogida la de física y química juntas. pero si se puede coger pienso que podría facilitarme esas 3 materias

Información sacada de http://www.educacion.gob.es/educacion/que-estudiar-y-donde/bachillerato/contenidos.html
85  Foros Generales / Foro Libre / Necesito un foro de diseño gráfico en el que haya dibujantes de sprites. en: 5 Junio 2012, 21:57 pm
Hola,
Acudo a vosotros para que me recomendéis lo que pregunto porque en no encuentro lo que busco en elhacker.net.

"Necesito un foro de diseño gráfico en el que haya dibujantes de sprites."

A poder ser activo.
86  Foros Generales / Foro Libre / Necesito ayuda para rellenar el formulario para grado medio. en: 3 Junio 2012, 12:30 pm
Hola quisiera saber que datos debo de poner donde pone "Expedido por:" había pensado el nombre del instituto pero no sé.

87  Foros Generales / Foro Libre / Qué curso de estos dos de FP os parece mejor? en: 21 Mayo 2012, 21:58 pm
Bueno estoy pensando en hacer un superior y hombre el que puedo hacer es este:
http://www.cefe.gva.es/eva/es/fp/infdamloe3d.htm

Pero cual de esto dos os parece mejor:
1-http://www.cefe.gva.es/eva/es/fp/infdamloe3d.htm

2-http://www.cefe.gva.es/eva/es/fp/infdai3d.htm

Creéis que tendré las misma posibilidades?
88  Media / Diseño Gráfico / Necesito un dibujante de sprites. en: 17 Mayo 2012, 14:30 pm
Necesito un dibujante de sprites.

Lo que debe de hacer es crear un pj con todos sus movimientos, es para un juego 2D que estoy haciendo el interesado que se ponga en contacto conmigo.
89  Programación / Programación C/C++ / [C++ Game][Aporte] Física gravedad y salto. en: 12 Mayo 2012, 17:32 pm
Bueno os pongo mi código de física para juegos de gravedad y salto.
Recordad que un objeto cae a 9,81 m/s  en la tierra por su gravedad. hecho un sistema parecido cambiado un poco la realidad XD

Y el sistema de salto lo he hecho parecido pero invertido.
VIDEO: HD


fisica.hpp
Código
  1. #ifndef _FISICAHPP_
  2. #define _FISICAHPP_
  3. using namespace std;
  4. #include "fisica.hpp"
  5. class Gravedad {
  6.    private:
  7.        float Intensidad;
  8.        float Fuerza;
  9.        float Tiempo;
  10.    public:
  11.        Gravedad();
  12.        bool State(float fps);
  13.        float GetFuerza();
  14.        void Reset();
  15. };
  16.  
  17. class Salto {
  18.    private:
  19.        float Intensidad;
  20.        float Fuerza;
  21.        float Tiempo;
  22.    public:
  23.        Salto();
  24.        bool State(float fps);
  25.        float GetFuerza();
  26.        void Reset();
  27. };
  28. #endif]

fisica.cpp
Código
  1. #include "fisica.hpp"
  2. Gravedad::Gravedad(){
  3.    Intensidad=2.98;
  4.    Fuerza=2.98;
  5. }
  6. bool Gravedad::State(float fps){
  7.    Tiempo = Tiempo+(1000/fps);
  8.    if(Tiempo>100){
  9.        Tiempo=0;
  10.        Fuerza=Fuerza+Intensidad;
  11.        return true;
  12.    }
  13.    return false;
  14. }
  15. float Gravedad::GetFuerza(){
  16.    return Fuerza;
  17. }
  18. void Gravedad::Reset(){
  19.    Fuerza=0;
  20. }
  21.  
  22.  
  23.  
  24. Salto::Salto(){
  25.    Intensidad=2.98;
  26.    Fuerza=12;
  27. }
  28. bool Salto::State(float fps){
  29.    Tiempo = Tiempo+(1000/fps);
  30.    if(Tiempo>100){
  31.        Tiempo=0;
  32.        Fuerza=Fuerza-Intensidad;
  33.        if(Fuerza<0)Fuerza=0;
  34.        return true;
  35.    }
  36.    return false;
  37. }
  38. float Salto::GetFuerza(){
  39.    return Fuerza;
  40. }
  41. void Salto::Reset(){
  42.    Fuerza=12;
  43. }
90  Programación / Programación C/C++ / Fps de un juego, aporte en: 10 Mayo 2012, 17:26 pm

Pensáis que estará bien hecho ?

Código:
bucle{
    tomar tiempo en milisegundos
    if(milisegundos >1.0/fps){ //por ejemplo 45 fps serian 22 milisegundo 1000 milisegundos es 1 segundo
        codigo del juego
        tomar tiempo en milisegundo
        mostrar 1.0/milisegundos
        eleminar milisegundos
    }
}
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines