]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Add a new model for the ogre
authorMario <mario.mario@y7mail.com>
Sun, 7 Apr 2013 21:45:38 +0000 (07:45 +1000)
committerMario <mario.mario@y7mail.com>
Sun, 7 Apr 2013 21:45:38 +0000 (07:45 +1000)
models/monsters/ogre.dpm [new file with mode: 0644]
models/monsters/ogre.dpm.framegroups [new file with mode: 0644]
models/monsters/ogre.mdl [deleted file]
models/monsters/ogre.mdl.framegroups [deleted file]
qcsrc/server/monsters/monster/ogre.qc
scripts/ogre.shader [new file with mode: 0644]
scripts/shaderlist.txt
textures/ogre.png [new file with mode: 0644]
textures/ogre_pants.png [new file with mode: 0644]

diff --git a/models/monsters/ogre.dpm b/models/monsters/ogre.dpm
new file mode 100644 (file)
index 0000000..0f9b30e
Binary files /dev/null and b/models/monsters/ogre.dpm differ
diff --git a/models/monsters/ogre.dpm.framegroups b/models/monsters/ogre.dpm.framegroups
new file mode 100644 (file)
index 0000000..03dd229
--- /dev/null
@@ -0,0 +1,11 @@
+/*
+Generated framegroups file for ogre
+Used by DarkPlaces to simulate frame groups in DPM models.
+*/
+
+1 31 60 1 // ogre idle
+32 31 60 1 // ogre walk
+63 31 120 1 // ogre walk
+94 31 60 1 // ogre pain
+125 101 60 1 // ogre swing
+226 76 60 0 // ogre die
diff --git a/models/monsters/ogre.mdl b/models/monsters/ogre.mdl
deleted file mode 100644 (file)
index a0cd4d7..0000000
Binary files a/models/monsters/ogre.mdl and /dev/null differ
diff --git a/models/monsters/ogre.mdl.framegroups b/models/monsters/ogre.mdl.framegroups
deleted file mode 100644 (file)
index 0d69386..0000000
+++ /dev/null
@@ -1 +0,0 @@
-1 8 10 1 // ogre stand\r10 15 10 1 // ogre walk\r26 7 10 1 // ogre run\r34 13 10 1 // ogre swing\r48 13 10 1 // ogre smash\r62 5 10 1 // ogre shoot\r68 4 10 0 // ogre pain1\r73 2 10 0 // ogre pain2\r76 5 10 0 // ogre pain3\r82 15 10 0 // ogre pain4\r98 14 10 0 // ogre pain5\r113 13 10 0 // ogre death1\r127 9 10 0 // ogre death2\r137 10 10 0 // ogre pull
\ No newline at end of file
index ffa3aab051e4184fdab4d78323306f66a02c8f62..35a6a378a31708f44c4ac8aa15b678ee612f2a3f 100644 (file)
@@ -11,20 +11,12 @@ float autocvar_g_monster_ogre_speed_run;
 float autocvar_g_monster_ogre_attack_uzi_bullets;
 
 // animations
-#define ogre_anim_stand        0
+#define ogre_anim_idle                 0
 #define ogre_anim_walk                 1
 #define ogre_anim_run          2
-#define ogre_anim_swing        3
-#define ogre_anim_smash        4
-#define ogre_anim_shoot        5
-#define ogre_anim_pain1        6
-#define ogre_anim_pain2        7
-#define ogre_anim_pain3        8
-#define ogre_anim_pain4        9
-#define ogre_anim_pain5        10
-#define ogre_anim_death1       11
-#define ogre_anim_death2       12
-#define ogre_anim_pull                 13
+#define ogre_anim_pain                 3
+#define ogre_anim_swing        4
+#define ogre_anim_die          5
 
 void chainsaw (float side)
 {
@@ -45,7 +37,7 @@ void ogre_think ()
        if(self.delay != -1)
                self.nextthink = self.delay;
        
-       monster_move(autocvar_g_monster_ogre_speed_run, autocvar_g_monster_ogre_speed_walk, 300, ogre_anim_run, ogre_anim_walk, ogre_anim_stand);
+       monster_move(autocvar_g_monster_ogre_speed_run, autocvar_g_monster_ogre_speed_walk, 300, ogre_anim_run, ogre_anim_walk, ogre_anim_idle);
 }
 
 .float ogre_cycles;
@@ -87,7 +79,7 @@ void ogre_uzi_fire ()
 
 void ogre_uzi ()
 {
-       self.frame = ogre_anim_shoot;
+       self.frame = ogre_anim_pain;
        self.attack_finished_single = time + 0.8;
        self.delay = time + 0.1;
        self.monster_delayedattack = ogre_uzi_fire;
@@ -96,7 +88,7 @@ void ogre_uzi ()
 void ogre_gl ()
 {
        W_Grenade_Attack2();
-       self.frame = ogre_anim_shoot;
+       self.frame = ogre_anim_pain;
        self.attack_finished_single = time + 0.8;
 }
 
@@ -132,11 +124,7 @@ void ogre_die()
        self.nextthink          = time + 2.1;
        self.movetype           = MOVETYPE_TOSS;
        self.think                      = Monster_Fade;
-       
-       if (random() < 0.5)
-               self.frame = ogre_anim_death1;
-       else
-               self.frame = ogre_anim_death2;
+       self.frame                      = ogre_anim_die;
                
        monster_hook_death(); // for post-death mods
 }
@@ -150,9 +138,9 @@ void ogre_spawn ()
        self.classname                  = "monster_ogre";
        self.checkattack                = GenericCheckAttack;
        self.attack_melee               = ogre_melee;
-       self.frame                              = ogre_anim_pull;
+       self.frame                              = ogre_anim_idle;
        self.attack_ranged              = ogre_missile;
-       self.nextthink                  = time + 1;
+       self.nextthink                  = time + 0.1;
        self.think                              = ogre_think;
        self.sprite_height              = 40;
        self.weapon                             = WEP_GRENADE_LAUNCHER;
@@ -178,7 +166,7 @@ void spawnfunc_monster_ogre ()
        
        if not (monster_initialize(
                         "Ogre",
-                        "models/monsters/ogre.mdl",
+                        "models/monsters/ogre.dpm",
                         OGRE_MIN, OGRE_MAX,
                         FALSE,
                         ogre_die, ogre_spawn))
diff --git a/scripts/ogre.shader b/scripts/ogre.shader
new file mode 100644 (file)
index 0000000..195e5f1
--- /dev/null
@@ -0,0 +1,8 @@
+textures/berzerker_texture
+{
+       cull none
+
+       {
+               map textures/ogre
+       }
+}
index 5f2d0987273f52d2b66901dca1f56bc1708abbb0..b779627c5215ac4be419e7c1f8a576f274184962 100644 (file)
@@ -18,3 +18,4 @@ mage
 barricade
 spider
 cerberus
+ogre
diff --git a/textures/ogre.png b/textures/ogre.png
new file mode 100644 (file)
index 0000000..4bb8be2
Binary files /dev/null and b/textures/ogre.png differ
diff --git a/textures/ogre_pants.png b/textures/ogre_pants.png
new file mode 100644 (file)
index 0000000..bf9665d
Binary files /dev/null and b/textures/ogre_pants.png differ