コード例 #1
0
 public NovaManager(RPG jeu, ScèneDeJeu scenejeu)
     : base(jeu)
 {
     Jeu          = jeu;
     ScèneJeu     = scenejeu;
     ListeDeNovas = new List <Nova>();
 }
コード例 #2
0
        public TerrainManager(RPG jeu, ScèneDeJeu scèneJeu, int nbZones, Vector2 étendue, string[] nomstextures, FogData[] fogs, Texture2D heightMap, List <string> listNomMusic)
            : base(jeu)
        {
            Jeu          = jeu;
            ScèneJeu     = scèneJeu;
            NbZones      = nbZones;
            Étendue      = étendue;
            Fogs         = fogs;
            ListNomMusic = listNomMusic;
            NomsTextures = nomstextures;
            Color[] couleursHeightMap = new Color[heightMap.Width * heightMap.Height];
            heightMap.GetData(couleursHeightMap);
            HeightMap  = new float[heightMap.Width, heightMap.Height];
            HauteurMax = 0;
            HauteurMin = 256 * ÉCHELLE_HAUTEUR;

            for (int i = 0; i < heightMap.Width; ++i)
            {
                for (int j = 0; j < heightMap.Height; ++j)
                {
                    HeightMap[i, heightMap.Height - 1 - j] = couleursHeightMap[i + j * heightMap.Width].R * ÉCHELLE_HAUTEUR;
                    HauteurMax = Math.Max(HeightMap[i, heightMap.Height - 1 - j], HauteurMax);
                    HauteurMin = Math.Min(HeightMap[i, heightMap.Height - 1 - j], HauteurMin);
                }
            }
            ListeTerrains = new Terrain[NbZones];
            for (int i = 0; i < NbZones; ++i)
            {
                ListeTerrains[i] = new Terrain(Jeu, ScèneJeu, new Vector3(0, 0, (-1) * i * Étendue.Y), Étendue, new Vector2(heightMap.Width - 1, (heightMap.Height - 1) / NbZones), NomsTextures[i], Fogs[i], HeightMap, i * ((heightMap.Height) / NbZones), ListNomMusic[i]);
                ListeTerrains[i].Initialize();
            }
        }
コード例 #3
0
 public ScèneCredits(RPG jeu, string nomFichierTxt, string nomFont, Color color, string nomImage, GestionnaireDeScènes scènesMgr)
     : base(jeu, nomImage, scènesMgr)
 {
     NomFichierTxt = nomFichierTxt;
     NomFont       = nomFont;
     Color         = color;
 }
コード例 #4
0
ファイル: TerrainManager.cs プロジェクト: ChrisVolkoff/DeRPG
        public TerrainManager(RPG jeu, ScèneDeJeu scèneJeu, int nbZones, Vector2 étendue, string[] nomstextures, FogData[] fogs, Texture2D heightMap, List<string> listNomMusic)
            : base(jeu)
        {
            Jeu = jeu;
            ScèneJeu = scèneJeu;
            NbZones = nbZones;
            Étendue = étendue;
            Fogs = fogs;
            ListNomMusic = listNomMusic;
            NomsTextures = nomstextures;
            Color[] couleursHeightMap = new Color[heightMap.Width * heightMap.Height];
            heightMap.GetData(couleursHeightMap);
            HeightMap = new float[heightMap.Width, heightMap.Height];
            HauteurMax = 0;
            HauteurMin = 256 * ÉCHELLE_HAUTEUR;

            for (int i = 0; i < heightMap.Width; ++i)
            {
                for (int j = 0; j < heightMap.Height; ++j)
                {
                    HeightMap[i, heightMap.Height - 1 - j] = couleursHeightMap[i + j * heightMap.Width].R * ÉCHELLE_HAUTEUR;
                    HauteurMax = Math.Max(HeightMap[i, heightMap.Height - 1 - j], HauteurMax);
                    HauteurMin = Math.Min(HeightMap[i, heightMap.Height - 1 - j], HauteurMin);
                }
            }
            ListeTerrains = new Terrain[NbZones];
            for (int i = 0; i < NbZones; ++i)
            {
                ListeTerrains[i] = new Terrain(Jeu, ScèneJeu, new Vector3(0, 0, (-1) * i * Étendue.Y), Étendue, new Vector2(heightMap.Width - 1, (heightMap.Height - 1) / NbZones), NomsTextures[i], Fogs[i], HeightMap, i * ((heightMap.Height) / NbZones), ListNomMusic[i]);
                ListeTerrains[i].Initialize();
            }
        }
コード例 #5
0
ファイル: ScèneCredits.cs プロジェクト: ChrisVolkoff/DeRPG
 public ScèneCredits(RPG jeu, string nomFichierTxt, string nomFont, Color color, string nomImage, GestionnaireDeScènes scènesMgr)
     : base(jeu, nomImage, scènesMgr)
 {
     NomFichierTxt = nomFichierTxt;
     NomFont = nomFont;
     Color = color;
 }
コード例 #6
0
 public CaméraThirdPerson(RPG jeu, InputManager3D inputMgr, Vector3 positionCaméra, ObjetDeBasePhysique objetÀSuivre, Vector3 orientation)
     : base(jeu)
 {
     InputMgr = inputMgr;
      ObjetÀSuivre = objetÀSuivre;
      CréerVolumeDeVisualisation(OUVERTURE_OBJECTIF, DISTANCE_PLAN_RAPPROCHÉ, DISTANCE_PLAN_ÉLOIGNÉ);
      CréerPointDeVue(positionCaméra, ObjetÀSuivre.Position, orientation);
 }
コード例 #7
0
 public ProjectileManager(RPG jeu, ScèneDeJeu scèneJeu, string nomModel, float modelScale)
     : base(jeu)
 {
     Jeu        = jeu;
     ScèneJeu   = scèneJeu;
     ModelName  = nomModel;
     ModelScale = modelScale;
 }
コード例 #8
0
 public ProjectileManager(RPG jeu, ScèneDeJeu scèneJeu, string nomModel, float modelScale)
     : base(jeu)
 {
     Jeu = jeu;
     ScèneJeu = scèneJeu;
     ModelName = nomModel;
     ModelScale = modelScale;
 }
コード例 #9
0
 public CaméraThirdPerson(RPG jeu, InputManager3D inputMgr, Vector3 positionCaméra, ObjetDeBasePhysique objetÀSuivre, Vector3 orientation)
     : base(jeu)
 {
     InputMgr     = inputMgr;
     ObjetÀSuivre = objetÀSuivre;
     CréerVolumeDeVisualisation(OUVERTURE_OBJECTIF, DISTANCE_PLAN_RAPPROCHÉ, DISTANCE_PLAN_ÉLOIGNÉ);
     CréerPointDeVue(positionCaméra, ObjetÀSuivre.Position, orientation);
 }
コード例 #10
0
ファイル: ScèneEvent.cs プロジェクト: ChrisVolkoff/DeRPG
 public ScèneEvent(RPG game,string message,GestionnaireDeScènes scèneMgr,Color couleurMessage,Color couleurBackground,bool quit)
     : base(game,scèneMgr)
 {
     Message = message;
     CouleurMessage = couleurMessage;
     CouleurBackground = couleurBackground;
     Quit = quit;
     Position = new Vector2(Jeu.Window.ClientBounds.Width / 2, Jeu.Window.ClientBounds.Height / 2);
 }
コード例 #11
0
 public ScèneEvent(RPG game, string message, GestionnaireDeScènes scèneMgr, Color couleurMessage, Color couleurBackground, bool quit)
     : base(game, scèneMgr)
 {
     Message           = message;
     CouleurMessage    = couleurMessage;
     CouleurBackground = couleurBackground;
     Quit     = quit;
     Position = new Vector2(Jeu.Window.ClientBounds.Width / 2, Jeu.Window.ClientBounds.Height / 2);
 }
コード例 #12
0
ファイル: BarreExp.cs プロジェクト: ChrisVolkoff/DeRPG
 public BarreExp(RPG jeu, ScèneDeJeu scenejeu, string nomtexture, Rectangle destination, float durée)
     : base(jeu)
 {
     Jeu = jeu;
     SceneJeu = scenejeu;
     NomTexture = nomtexture;
     Destination = destination;
     Durée = durée;
     SourceX = 0;
 }
コード例 #13
0
ファイル: Boss.cs プロジェクト: ChrisVolkoff/DeRPG
 public Boss(RPG jeu, ScèneDeJeu scèneJeu, Héros joueur, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
                   string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant, float ptsVie,
                   int ptsDéfense, int ptsAttaque, int deltaDamage, float attackSpeed, bool isRange, float range, float aggrorange, int niveau, int id)
     : base(jeu, scèneJeu, joueur, nomModèle, scale, échelleBox, positionInitiale, rotationInitiale, rotationOffset, name, vitesseDéplacementInitiale, vitesseRotationInitiale,
             peutBougerEnTournant, ptsVie, ptsDéfense, ptsAttaque, deltaDamage, attackSpeed, isRange, range, aggrorange, niveau, id)
 {
     PtsAttaqueInitial = ptsAttaque;
     PositionInitiale = positionInitiale;
     ListeIDMinions = new List<int>();
 }
コード例 #14
0
 public Boss(RPG jeu, ScèneDeJeu scèneJeu, Héros joueur, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
             string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant, float ptsVie,
             int ptsDéfense, int ptsAttaque, int deltaDamage, float attackSpeed, bool isRange, float range, float aggrorange, int niveau, int id)
     : base(jeu, scèneJeu, joueur, nomModèle, scale, échelleBox, positionInitiale, rotationInitiale, rotationOffset, name, vitesseDéplacementInitiale, vitesseRotationInitiale,
            peutBougerEnTournant, ptsVie, ptsDéfense, ptsAttaque, deltaDamage, attackSpeed, isRange, range, aggrorange, niveau, id)
 {
     PtsAttaqueInitial = ptsAttaque;
     PositionInitiale  = positionInitiale;
     ListeIDMinions    = new List <int>();
 }
コード例 #15
0
ファイル: Terrain.cs プロジェクト: christophebedard/DeRPG
        public Terrain(RPG jeu, ScèneDeJeu scèneJeu, Vector3 position, Vector2 étendue, Vector2 dimensions, string nomtexture, FogData fog, float[,] heightMap, int indexDébut, string nomMusicSpécifique)
            : base(jeu, scèneJeu, position, ROTATION_TERRAIN, étendue, dimensions, nomtexture)
        {
            IndexDébut         = indexDébut;
            HeightMap          = heightMap;
            Fog                = fog;
            NomMusicSpécifique = nomMusicSpécifique;

            Origine = new Vector3(0, 0, 0);
        }
コード例 #16
0
ファイル: HealthBar.cs プロジェクト: christophebedard/DeRPG
 public HealthBarManager(RPG jeu, ScèneDeJeu scenejeu, string nomhealthtexture, string nombackgroundtexture, string nomfont)
     : base(jeu)
 {
     Jeu                  = jeu;
     ScèneJeu             = scenejeu;
     NomHealthTexture     = nomhealthtexture;
     NomBackgroundTexture = nombackgroundtexture;
     NomFont              = nomfont;
     ListeDeBarres        = new List <HealthBar>();
 }
コード例 #17
0
        public Scène(RPG jeu, GestionnaireDeScènes scènesMgr)
            : base(jeu)
        {
            Jeu          = jeu;
            SceneManager = scènesMgr;

            ListeDesÉléments = new List <GameComponent>();

            GetServices();
        }
コード例 #18
0
ファイル: ObjetDeBase.cs プロジェクト: christophebedard/DeRPG
 public ObjetDeBase(RPG jeu, ScèneDeJeu scèneJeu, string nomModèle, float échelleInitiale, Vector3 rotationInitiale, Vector3 positionInitiale)
     : base(jeu)
 {
     Jeu       = jeu;
     ScèneJeu  = scèneJeu;
     NomModèle = nomModèle;
     Position  = positionInitiale;
     Échelle   = échelleInitiale;
     Rotation  = rotationInitiale;
 }
コード例 #19
0
ファイル: ObjetDeBase.cs プロジェクト: ChrisVolkoff/DeRPG
 public ObjetDeBase(RPG jeu, ScèneDeJeu scèneJeu, string nomModèle, float échelleInitiale, Vector3 rotationInitiale, Vector3 positionInitiale)
     : base(jeu)
 {
     Jeu = jeu;
     ScèneJeu = scèneJeu;
     NomModèle = nomModèle;
     Position = positionInitiale;
     Échelle = échelleInitiale;
     Rotation = rotationInitiale;
 }
コード例 #20
0
 public BarreExp(RPG jeu, ScèneDeJeu scenejeu, string nomtexture, Rectangle destination, float durée)
     : base(jeu)
 {
     Jeu         = jeu;
     SceneJeu    = scenejeu;
     NomTexture  = nomtexture;
     Destination = destination;
     Durée       = durée;
     SourceX     = 0;
 }
コード例 #21
0
ファイル: Terrain.cs プロジェクト: ChrisVolkoff/DeRPG
        public Terrain(RPG jeu, ScèneDeJeu scèneJeu, Vector3 position, Vector2 étendue, Vector2 dimensions, string nomtexture, FogData fog, float[,] heightMap, int indexDébut, string nomMusicSpécifique)
            : base(jeu, scèneJeu, position, ROTATION_TERRAIN, étendue, dimensions, nomtexture)
        {
            IndexDébut = indexDébut;
             HeightMap = heightMap;
             Fog = fog;
             NomMusicSpécifique = nomMusicSpécifique;

             Origine = new Vector3(0,0,0);
        }
コード例 #22
0
 public Nova(RPG jeu, ScèneDeJeu scèneJeu, Vector3 position, float rayon, TimeSpan durée, int damage, string nomtexture)
     : base(jeu, scèneJeu, position, ROTATION_NOVA, Vector2.One, Vector2.One, nomtexture)
 {
     Durée      = durée;
     RayonFinal = rayon;
     Damage     = damage;
     Monde      = Matrix.Identity;
     Monde      = Matrix.CreateScale(0);
     Monde     *= Matrix.CreateFromYawPitchRoll(Rotation.Y, Rotation.X, Rotation.Z);
     Monde     *= Matrix.CreateTranslation(Position);
 }
コード例 #23
0
ファイル: HealthBar.cs プロジェクト: ChrisVolkoff/DeRPG
 public HealthBar(RPG jeu, ScèneDeJeu scenejeu, Monstre sujet, string nomhealthtex, string nombackgroundtex, string nomfont)
     : base(jeu)
 {
     Jeu = jeu;
     ScèneJeu = scenejeu;
     Sujet = sujet;
     NomHealthTex = nomhealthtex;
     NomBackgroundTex = nombackgroundtex;
     NomFont = nomfont;
     Visible = false;
 }
コード例 #24
0
 public BoîteDeCollision(RPG jeu, ScèneDeJeu scèneJeu, ObjetDeBasePhysique objetPhysique, BoundingBox boîte, Color couleur)
     : base(jeu)
 {
     ScèneJeu      = scèneJeu;
     Boîte         = boîte;
     Min           = boîte.Min;
     Max           = boîte.Max;
     Couleur       = couleur;
     ObjetPhysique = objetPhysique;
     Visible       = true; // on ne l'affiche pas initialement
 }
コード例 #25
0
ファイル: Nova.cs プロジェクト: ChrisVolkoff/DeRPG
 public Nova(RPG jeu, ScèneDeJeu scèneJeu, Vector3 position, float rayon, TimeSpan durée, int damage, string nomtexture)
     : base(jeu, scèneJeu, position, ROTATION_NOVA, Vector2.One, Vector2.One, nomtexture)
 {
     Durée = durée;
      RayonFinal = rayon;
      Damage = damage;
      Monde = Matrix.Identity;
      Monde = Matrix.CreateScale(0);
      Monde *= Matrix.CreateFromYawPitchRoll(Rotation.Y, Rotation.X, Rotation.Z);
      Monde *= Matrix.CreateTranslation(Position);
 }
コード例 #26
0
 public BoîteDeCollision(RPG jeu, ScèneDeJeu scèneJeu, ObjetDeBasePhysique objetPhysique, BoundingBox boîte, Color couleur)
     : base(jeu)
 {
     ScèneJeu = scèneJeu;
     Boîte = boîte;
     Min = boîte.Min;
     Max = boîte.Max;
     Couleur = couleur;
     ObjetPhysique = objetPhysique;
     Visible = true; // on ne l'affiche pas initialement
 }
コード例 #27
0
ファイル: HealthBar.cs プロジェクト: christophebedard/DeRPG
 public HealthBar(RPG jeu, ScèneDeJeu scenejeu, Monstre sujet, string nomhealthtex, string nombackgroundtex, string nomfont)
     : base(jeu)
 {
     Jeu              = jeu;
     ScèneJeu         = scenejeu;
     Sujet            = sujet;
     NomHealthTex     = nomhealthtex;
     NomBackgroundTex = nombackgroundtex;
     NomFont          = nomfont;
     Visible          = false;
 }
コード例 #28
0
ファイル: Héros.cs プロジェクト: ChrisVolkoff/DeRPG
 public Héros(RPG jeu, ScèneDeJeu scèneJeu, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
                   string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant, float ptsVie, float ptsRessource,
                   int ptsDéfense, int ptsAttaque, int deltaDamage, float attackSpeed, string nomtextureNova)
     : base(jeu, scèneJeu, nomModèle, scale, échelleBox, positionInitiale, rotationInitiale, rotationOffset, name, vitesseDéplacementInitiale, vitesseRotationInitiale,
            peutBougerEnTournant, ptsVie, ptsDéfense, ptsAttaque, deltaDamage, attackSpeed, false, RANGE)
 {
     PositionCoordInitiale = new Vector2(positionInitiale.X, positionInitiale.Z);
     PtsRessourceMax = ptsRessource;
     PtsVieMax = ptsVie;
     PtsRessource = ptsRessource;
     NomTextureNova = nomtextureNova;
 }
コード例 #29
0
ファイル: Bouton.cs プロジェクト: ChrisVolkoff/DeRPG
        public Bouton(RPG jeu, Vector2 position, string nomFont, Color defaultColor, Color altColor, GestionnaireDeScènes sceneManager)
            : base(jeu)
        {
            Jeu = jeu;
            SceneManager = sceneManager;
            Position = position;
            NomFont = nomFont;
            DefaultColor = defaultColor;
            AltColor = altColor;

            GetServices();
        }
コード例 #30
0
ファイル: ÊtreVivant.cs プロジェクト: ChrisVolkoff/DeRPG
 public ÊtreVivant(RPG game, ScèneDeJeu scèneJeu, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
                   string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant)
     : base(game, scèneJeu, nomModèle, scale, échelleBox, rotationInitiale, rotationOffset, positionInitiale)
 {
     PositionCoord = new Vector2(positionInitiale.X, positionInitiale.Z);
     Name = name;
     VitesseDéplacementInitiale = vitesseDéplacementInitiale;
     VitesseRotationInitiale = vitesseRotationInitiale;
     VitesseDéplacement = vitesseDéplacementInitiale;
     VitesseRotation = vitesseRotationInitiale;
     PeutBougerEnTournant = peutBougerEnTournant;
 }
コード例 #31
0
 public Héros(RPG jeu, ScèneDeJeu scèneJeu, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
              string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant, float ptsVie, float ptsRessource,
              int ptsDéfense, int ptsAttaque, int deltaDamage, float attackSpeed, string nomtextureNova)
     : base(jeu, scèneJeu, nomModèle, scale, échelleBox, positionInitiale, rotationInitiale, rotationOffset, name, vitesseDéplacementInitiale, vitesseRotationInitiale,
            peutBougerEnTournant, ptsVie, ptsDéfense, ptsAttaque, deltaDamage, attackSpeed, false, RANGE)
 {
     PositionCoordInitiale = new Vector2(positionInitiale.X, positionInitiale.Z);
     PtsRessourceMax       = ptsRessource;
     PtsVieMax             = ptsVie;
     PtsRessource          = ptsRessource;
     NomTextureNova        = nomtextureNova;
 }
コード例 #32
0
 public ObjetDeBasePhysique(RPG jeu, ScèneDeJeu scèneJeu, String nomModèle, float échelleInitiale, float échelleBox, Vector3 rotationInitiale, Vector3 rotationOffset, Vector3 positionInitiale)
     : base(jeu)
 {
     Jeu            = jeu;
     ScèneJeu       = scèneJeu;
     NomModèle      = nomModèle;
     Position       = positionInitiale;
     Échelle        = échelleInitiale;
     ÉchelleBox     = échelleBox;
     Rotation       = new Vector3(rotationInitiale.X, rotationInitiale.Y, rotationInitiale.Z);
     RotationOffset = rotationOffset;
 }
コード例 #33
0
 public ObjetDeBasePhysique(RPG jeu, ScèneDeJeu scèneJeu, String nomModèle, float échelleInitiale, float échelleBox, Vector3 rotationInitiale, Vector3 rotationOffset, Vector3 positionInitiale)
     : base(jeu)
 {
     Jeu = jeu;
     ScèneJeu = scèneJeu;
     NomModèle = nomModèle;
     Position = positionInitiale;
     Échelle = échelleInitiale;
     ÉchelleBox = échelleBox;
     Rotation = new Vector3(rotationInitiale.X, rotationInitiale.Y, rotationInitiale.Z);
     RotationOffset = rotationOffset;
 }
コード例 #34
0
 public ÊtreVivant(RPG game, ScèneDeJeu scèneJeu, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
                   string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant)
     : base(game, scèneJeu, nomModèle, scale, échelleBox, rotationInitiale, rotationOffset, positionInitiale)
 {
     PositionCoord = new Vector2(positionInitiale.X, positionInitiale.Z);
     Name          = name;
     VitesseDéplacementInitiale = vitesseDéplacementInitiale;
     VitesseRotationInitiale    = vitesseRotationInitiale;
     VitesseDéplacement         = vitesseDéplacementInitiale;
     VitesseRotation            = vitesseRotationInitiale;
     PeutBougerEnTournant       = peutBougerEnTournant;
 }
コード例 #35
0
        public Bouton(RPG jeu, Vector2 position, string nomFont, Color defaultColor, Color altColor, GestionnaireDeScènes sceneManager)
            : base(jeu)
        {
            Jeu          = jeu;
            SceneManager = sceneManager;
            Position     = position;
            NomFont      = nomFont;
            DefaultColor = defaultColor;
            AltColor     = altColor;

            GetServices();
        }
コード例 #36
0
        // Constructeur normal: position, vitesse, angle theta, angle beta
        public ProjectileBalistique(RPG jeu, ScèneDeJeu scèneJeu, Combattant propriétaire, int damage, int id, float vitesseInitiale, float angleTheta, float angleBeta, string nomModèle, float échelleInitiale, Vector3 rotationInitiale, Vector3 positionInitiale)
            : base(jeu, scèneJeu, nomModèle, échelleInitiale, 1f, rotationInitiale, new Vector3(0, 0, 0), positionInitiale)
        {
            Propriétaire = propriétaire;
            Damage = damage;
            ID = id;

            PositionInitiale = new Vector3(positionInitiale.X, positionInitiale.Y+OFFSET_HAUTEUR_DÉPART, positionInitiale.Z);
            Vitesse = vitesseInitiale;
            AngleTheta = MathHelper.ToRadians(angleTheta);
            AngleBeta = MathHelper.ToRadians(angleBeta);
        }
コード例 #37
0
        public GestionnaireDeScènes(RPG jeu, SpriteBatch spritesMgr, RessourcesManager<SpriteFont> fontsMgr,
                                      RessourcesManager<Texture2D> texturesMgr, RessourcesManager<Model> modelsMgr, InputManager inputMgr)
            : base(jeu)
        {
            Jeu = jeu;
            SpritesManager = spritesMgr;
            FontsManager = fontsMgr;
            TexturesManager = texturesMgr;
            ModelsManager = modelsMgr;
            InputManager = inputMgr;

            ListeDesScènes = new List<Scène>();
        }
コード例 #38
0
        public GestionnaireDeScènes(RPG jeu, SpriteBatch spritesMgr, RessourcesManager <SpriteFont> fontsMgr,
                                    RessourcesManager <Texture2D> texturesMgr, RessourcesManager <Model> modelsMgr, InputManager inputMgr)
            : base(jeu)
        {
            Jeu             = jeu;
            SpritesManager  = spritesMgr;
            FontsManager    = fontsMgr;
            TexturesManager = texturesMgr;
            ModelsManager   = modelsMgr;
            InputManager    = inputMgr;

            ListeDesScènes = new List <Scène>();
        }
コード例 #39
0
ファイル: BoutonInfo.cs プロジェクト: christophebedard/DeRPG
 /// <param name="texture">Peut être nul; alors rien n'apparaitra et
 /// le bouton ne sera qu'une zone pointable avec du texte</param>
 public BoutonInfo(RPG jeu, ScèneDeJeu scenejeu, Rectangle emplacement, string nomtexture, string nomtoggleTexture, string nomfont, string nomtextBackground, string textfilename, string alttextfilename)
     : base(jeu)
 {
     Jeu               = jeu;
     ScèneJeu          = scenejeu;
     Emplacement       = emplacement;
     NomTexture        = nomtexture;
     NomToggleTexture  = nomtoggleTexture;
     NomFont           = nomfont;
     NomTextBackground = nomtextBackground;
     TextFileName      = textfilename;
     AltTextFileName   = alttextfilename;
 }
コード例 #40
0
        public Monstre(RPG jeu, ScèneDeJeu scèneJeu, Héros joueur, string nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
                       string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant, float ptsVie,
                       int ptsDéfense, int ptsAttaque, int deltaDamage, float attackSpeed, bool isRange, float range, float aggrorange, int niveau, int id)
            : base(jeu, scèneJeu, nomModèle, scale, échelleBox, positionInitiale, rotationInitiale, rotationOffset, name, vitesseDéplacementInitiale, vitesseRotationInitiale,
                   peutBougerEnTournant, ptsVie, ptsDéfense, ptsAttaque, deltaDamage, attackSpeed, isRange, range)
        {
            Joueur     = joueur;
            AggroRange = Math.Max(aggrorange, CHARM_LEASH_DISTANCE);
            int hauteur = Jeu.GénérateurAléatoire.Next(MIN_ZONE_PATROUILLE, MAX_ZONE_PATROUILLE + 1);
            int largeur = Jeu.GénérateurAléatoire.Next(MIN_ZONE_PATROUILLE, MAX_ZONE_PATROUILLE + 1);

            ZonePatrouille = new Rectangle((int)(PositionCoord.X - (largeur / 2)), (int)(PositionCoord.Y - (hauteur / 2)), largeur, hauteur);
            ID             = id;
            Niveau         = niveau;
        }
コード例 #41
0
ファイル: PlanTexturé.cs プロジェクト: ChrisVolkoff/DeRPG
 public PlanTexturé(RPG jeu, ScèneDeJeu scèneJeu, Vector3 position, Vector3 rotation, Vector2 étendue, Vector2 dimensions, string nomtexture)
     : base(jeu)
 {
     ScèneJeu = scèneJeu;
      Position = position;
      Étendue = étendue;
      Dimensions = dimensions;
      Rotation = rotation;
      DeltaX = étendue.X / dimensions.X;
      DeltaY = étendue.Y / dimensions.Y;
      NomTexturePlan = nomtexture;
      Origine = new Vector3(-Étendue.X / 2, -Étendue.Y / 2, 0);
      Monde *= Matrix.CreateFromYawPitchRoll(Rotation.Y, Rotation.X, Rotation.Z);
      Monde *= Matrix.CreateTranslation(Position);
 }
コード例 #42
0
ファイル: Combattant.cs プロジェクト: christophebedard/DeRPG
 public Combattant(RPG game, ScèneDeJeu scèneJeu, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
                   string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant, float ptsVie,
                   int ptsDéfense, int ptsAttaque, int deltaDamage, float attackSpeed, bool isRange, float range)
     : base(game, scèneJeu, nomModèle, scale, échelleBox, positionInitiale, rotationInitiale, rotationOffset, name, vitesseDéplacementInitiale, vitesseRotationInitiale,
            peutBougerEnTournant)
 {
     PtsVie      = ptsVie;
     PtsVieMax   = ptsVie;
     PtsDéfense  = PtsDéfense;
     PtsAttaque  = ptsAttaque;
     DeltaDamage = deltaDamage;
     AttackSpeed = attackSpeed;
     Range       = range;
     IsRange     = isRange;
 }
コード例 #43
0
 public PlanTexturé(RPG jeu, ScèneDeJeu scèneJeu, Vector3 position, Vector3 rotation, Vector2 étendue, Vector2 dimensions, string nomtexture)
     : base(jeu)
 {
     ScèneJeu       = scèneJeu;
     Position       = position;
     Étendue        = étendue;
     Dimensions     = dimensions;
     Rotation       = rotation;
     DeltaX         = étendue.X / dimensions.X;
     DeltaY         = étendue.Y / dimensions.Y;
     NomTexturePlan = nomtexture;
     Origine        = new Vector3(-Étendue.X / 2, -Étendue.Y / 2, 0);
     Monde         *= Matrix.CreateFromYawPitchRoll(Rotation.Y, Rotation.X, Rotation.Z);
     Monde         *= Matrix.CreateTranslation(Position);
 }
コード例 #44
0
ファイル: Combattant.cs プロジェクト: ChrisVolkoff/DeRPG
 public Combattant(RPG game, ScèneDeJeu scèneJeu, String nomModèle, float scale, float échelleBox, Vector3 positionInitiale, Vector3 rotationInitiale, Vector3 rotationOffset,
                   string name, float vitesseDéplacementInitiale, float vitesseRotationInitiale, bool peutBougerEnTournant, float ptsVie,
                   int ptsDéfense, int ptsAttaque, int deltaDamage, float attackSpeed, bool isRange, float range)
     : base(game, scèneJeu, nomModèle, scale, échelleBox,positionInitiale, rotationInitiale, rotationOffset, name, vitesseDéplacementInitiale, vitesseRotationInitiale,
            peutBougerEnTournant)
 {
     PtsVie = ptsVie;
     PtsVieMax = ptsVie;
     PtsDéfense = PtsDéfense;
     PtsAttaque = ptsAttaque;
     DeltaDamage = deltaDamage;
     AttackSpeed = attackSpeed;
     Range = range;
     IsRange = isRange;
 }
コード例 #45
0
        // Constructeur: position initiale, position finale, portée max
        public ProjectileBalistique(RPG jeu, ScèneDeJeu scèneJeu, Combattant propriétaire, int damage, int id, Vector3 positionInitiale, Vector3 positionFinale, float portéeMax, string nomModèle, float échelleInitiale, Vector3 rotationInitiale)
            : base(jeu, scèneJeu, nomModèle, échelleInitiale, 1f, rotationInitiale, new Vector3(0, 0, 0), positionInitiale)
        {
            Propriétaire = propriétaire;
            Damage = damage;
            ID = id;

            PositionInitiale = new Vector3(positionInitiale.X, positionInitiale.Y+OFFSET_HAUTEUR_DÉPART, positionInitiale.Z);

            float portéeRéelle = (float)Math.Sqrt(((positionFinale.X - PositionInitiale.X) * (positionFinale.X - PositionInitiale.X)) + ((positionFinale.Z - PositionInitiale.Z) * (positionFinale.Z - PositionInitiale.Z)));
            float h = PositionInitiale.Y - positionFinale.Y;

            Vitesse = CalculerVitesseSelonPortéeMax(portéeMax, h, ACCÉLÉRATION_GRAVITATIONNELLE);
            AngleTheta = CalculerAngleThetaSelonVitesse(Vitesse, portéeRéelle, h, ACCÉLÉRATION_GRAVITATIONNELLE);
            AngleBeta = (float)Math.Atan2((positionFinale.X - positionInitiale.X), (positionFinale.Z - positionInitiale.Z));
        }
コード例 #46
0
ファイル: HUD.cs プロジェクト: ChrisVolkoff/DeRPG
 public HUD(RPG jeu, ScèneDeJeu scenejeu, Héros joueur, string nomtexturegui, string nomtextureVie, string nomtextureRessource, string nomtextureExp,  float duréeAnimExp, string[] iconesSpells, string[] iconesSpellsAlt, string nomfontTextes, string nomtextBackground, string[] textfilenames, string[] alttextfilenames)
     : base(jeu)
 {
     Jeu = jeu;
      ScèneJeu = scenejeu;
      NomGUI = nomtexturegui;
      Joueur = joueur;
      NomTextureVie = nomtextureVie;
      NomTextureRessource = nomtextureRessource;
      Spells = new BoutonInfo[4]
      {
      new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X1*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y*ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR*ScèneJeu.Scale.Y)), iconesSpells[0], iconesSpellsAlt[0], nomfontTextes, nomtextBackground, textfilenames[0], alttextfilenames[0]),
      new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X2*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y*ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR*ScèneJeu.Scale.Y)), iconesSpells[1], iconesSpellsAlt[1], nomfontTextes, nomtextBackground, textfilenames[1], alttextfilenames[1]),
      new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X3*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y*ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR*ScèneJeu.Scale.Y)), iconesSpells[2], iconesSpellsAlt[2], nomfontTextes, nomtextBackground, textfilenames[2], alttextfilenames[2]),
      new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X4*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y*ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR*ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR*ScèneJeu.Scale.Y)), iconesSpells[3], iconesSpellsAlt[3], nomfontTextes, nomtextBackground, textfilenames[3], alttextfilenames[3]),
      };
      ExpBar = new BarreExp(jeu, scenejeu, nomtextureExp, new Rectangle(EXP_BAR_GAUCHE, EXP_BAR_HAUT, EXP_BAR_DROITE - EXP_BAR_GAUCHE, EXP_BAR_BAS - EXP_BAR_HAUT), duréeAnimExp);
      Stats = new InfoStats(jeu, scenejeu, joueur, new Rectangle((int)(STATS_X * ScèneJeu.Scale.X), (int)(STATS_Y * ScèneJeu.Scale.Y), (int)(STATS_LARGEUR * ScèneJeu.Scale.X), (int)(STATS_HAUTEUR * ScèneJeu.Scale.Y)), nomfontTextes, nomtextBackground);
 }
コード例 #47
0
 public HUD(RPG jeu, ScèneDeJeu scenejeu, Héros joueur, string nomtexturegui, string nomtextureVie, string nomtextureRessource, string nomtextureExp, float duréeAnimExp, string[] iconesSpells, string[] iconesSpellsAlt, string nomfontTextes, string nomtextBackground, string[] textfilenames, string[] alttextfilenames)
     : base(jeu)
 {
     Jeu                 = jeu;
     ScèneJeu            = scenejeu;
     NomGUI              = nomtexturegui;
     Joueur              = joueur;
     NomTextureVie       = nomtextureVie;
     NomTextureRessource = nomtextureRessource;
     Spells              = new BoutonInfo[4]
     {
         new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X1 * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y * ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR * ScèneJeu.Scale.Y)), iconesSpells[0], iconesSpellsAlt[0], nomfontTextes, nomtextBackground, textfilenames[0], alttextfilenames[0]),
         new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X2 * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y * ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR * ScèneJeu.Scale.Y)), iconesSpells[1], iconesSpellsAlt[1], nomfontTextes, nomtextBackground, textfilenames[1], alttextfilenames[1]),
         new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X3 * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y * ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR * ScèneJeu.Scale.Y)), iconesSpells[2], iconesSpellsAlt[2], nomfontTextes, nomtextBackground, textfilenames[2], alttextfilenames[2]),
         new BoutonInfo(jeu, scenejeu, new Rectangle((int)(SPELLS_BOUTON_X4 * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_Y * ScèneJeu.Scale.Y), (int)(SPELLS_BOUTON_LARGEUR * ScèneJeu.Scale.X), (int)(SPELLS_BOUTON_HAUTEUR * ScèneJeu.Scale.Y)), iconesSpells[3], iconesSpellsAlt[3], nomfontTextes, nomtextBackground, textfilenames[3], alttextfilenames[3]),
     };
     ExpBar = new BarreExp(jeu, scenejeu, nomtextureExp, new Rectangle(EXP_BAR_GAUCHE, EXP_BAR_HAUT, EXP_BAR_DROITE - EXP_BAR_GAUCHE, EXP_BAR_BAS - EXP_BAR_HAUT), duréeAnimExp);
     Stats  = new InfoStats(jeu, scenejeu, joueur, new Rectangle((int)(STATS_X * ScèneJeu.Scale.X), (int)(STATS_Y * ScèneJeu.Scale.Y), (int)(STATS_LARGEUR * ScèneJeu.Scale.X), (int)(STATS_HAUTEUR * ScèneJeu.Scale.Y)), nomfontTextes, nomtextBackground);
 }
コード例 #48
0
ファイル: Program.cs プロジェクト: ChrisVolkoff/DeRPG
 static void Main(string[] args)
 {
     using (RPG game = new RPG())
     {
         //try
         //{
         //    game.Run();
         //}
         //catch (Exception e)
         //{
         //    Debug.WriteLine(e.Message);
         //    StreamWriter fichierSortie = new StreamWriter("debug_log.txt");
         //    fichierSortie.WriteLine("Message: " + e.Message);
         //    fichierSortie.WriteLine("At:      " + e.TargetSite);
         //    fichierSortie.WriteLine("Trace:   " + e.StackTrace);
         //    fichierSortie.Close();
         //}
         game.Run();
     }
 }
コード例 #49
0
 static void Main(string[] args)
 {
     using (RPG game = new RPG())
     {
         //try
         //{
         //    game.Run();
         //}
         //catch (Exception e)
         //{
         //    Debug.WriteLine(e.Message);
         //    StreamWriter fichierSortie = new StreamWriter("debug_log.txt");
         //    fichierSortie.WriteLine("Message: " + e.Message);
         //    fichierSortie.WriteLine("At:      " + e.TargetSite);
         //    fichierSortie.WriteLine("Trace:   " + e.StackTrace);
         //    fichierSortie.Close();
         //}
         game.Run();
     }
 }
コード例 #50
0
ファイル: HealthBar.cs プロジェクト: ChrisVolkoff/DeRPG
 public HealthBarManager(RPG jeu, ScèneDeJeu scenejeu, string nomhealthtexture, string nombackgroundtexture, string nomfont)
     : base(jeu)
 {
     Jeu = jeu;
     ScèneJeu = scenejeu;
     NomHealthTexture = nomhealthtexture;
     NomBackgroundTexture = nombackgroundtexture;
     NomFont = nomfont;
     ListeDeBarres = new List<HealthBar>();
 }
コード例 #51
0
 public MonsterManager(RPG jeu, ScèneDeJeu scèneJeu)
     : base(jeu)
 {
     Jeu      = jeu;
     ScèneJeu = scèneJeu;
 }
コード例 #52
0
ファイル: BoutonRéglage.cs プロジェクト: ChrisVolkoff/DeRPG
 public BoutonRéglage(RPG jeu, int valeurInitiale, Vector2 position, string texte, string nomFont, Color defaultColor, Color altColor, GestionnaireDeScènes sceneManager)
     : base(jeu, position, nomFont, defaultColor, altColor, sceneManager)
 {
     ValeurInitiale = (int)MathHelper.Clamp(valeurInitiale, 0, 100);
     Texte = texte;
 }
コード例 #53
0
 public CollisionManager(RPG jeu, ScèneDeJeu scèneJeu)
     : base(jeu)
 {
     Jeu      = jeu;
     ScèneJeu = scèneJeu;
 }
コード例 #54
0
ファイル: BoutonBool.cs プロジェクト: ChrisVolkoff/DeRPG
 public BoutonBool(RPG jeu, Vector2 position, char car, string texte, string nomFont, Color defaultColor, Color altColor, GestionnaireDeScènes sceneManager)
     : base(jeu, position, nomFont, defaultColor, altColor, sceneManager)
 {
     Car = car;
     Texte = texte;
 }
コード例 #55
0
 public ScèneDeJeu(RPG jeu, GestionnaireDeScènes scènesMgr)
     : base(jeu, scènesMgr)
 {
 }
コード例 #56
0
ファイル: Doodad.cs プロジェクト: ChrisVolkoff/DeRPG
 public Doodad(RPG jeu, ScèneDeJeu scènejeu, string nomModèle, string nomtexture, float échelleInitiale, float échelleBox, Vector2 positionInitiale, Vector3 rotationInitiale, bool useAlphaBlend)
     : base(jeu, scènejeu, nomModèle, échelleInitiale, échelleBox, rotationInitiale, Vector3.Zero, new Vector3(positionInitiale.X, scènejeu.MapManager.CalculerHauteurPoint(positionInitiale), positionInitiale.Y))
 {
     NomTexture = nomtexture;
     UseAlphaBlend = useAlphaBlend;
 }
コード例 #57
0
ファイル: Doodad.cs プロジェクト: ChrisVolkoff/DeRPG
 public DoodadManager(RPG jeu, ScèneDeJeu scèneJeu)
     : base(jeu)
 {
     Jeu = jeu;
     ScèneJeu = scèneJeu;
 }
コード例 #58
0
ファイル: Nova.cs プロジェクト: ChrisVolkoff/DeRPG
 public NovaManager(RPG jeu, ScèneDeJeu scenejeu)
     : base(jeu)
 {
     Jeu = jeu;
      ScèneJeu = scenejeu;
      ListeDeNovas = new List<Nova>();
 }
コード例 #59
0
 public CharacterSelection(RPG jeu, string nomImage, GestionnaireDeScènes scènesMgr)
     : base(jeu, nomImage, scènesMgr)
 {
 }
コード例 #60
0
 public CharacterSelection(RPG jeu, string nomImage, GestionnaireDeScènes scènesMgr)
     : base(jeu, nomImage, scènesMgr)
 {
 }