Les Textures Utilisées Par Une Map Cs:source ? |
27/10/2004 - 09:31:12 |
Post
#1
|
|
|
Group: 17 Buddies Posts: 5 245 Joined: 15/01/2004 Team: KiNdReD |
Comment faire pour les lister ?
|
|
|
|
![]() |
28/10/2004 - 00:50:52 |
Post
#2
|
|
|
Group: 17 Buddies Posts: 5 245 Joined: 15/01/2004 Team: KiNdReD |
bon j'ai solutionné mon probleme grace à un script perl .... et un bind magique bind "F4" "+mat_texture_list" .... et beaucoup de temps ...
et tout ça pour demeller un pack de map dont la moitié sont des beta et le reste des map sans grand interet .... QUOTE #!/usr/bin/perl my(%textures,$indicedir); $indicedir=0; #Charge la liste des textures du Pack sub analyseTexturesPacksDir { my ($materails,$parent)=@_; $indicedir+=1; $dirname=DIR . $indicedir; unless (opendir($dirname,$materails . "/" . $parent)) { die("$materails introuvable"); } while ($directory=readdir($dirname)) { if (($directory !~ /^\.$/) and ($directory!~ /^\.\.$/)) { if (-d $materails . "/" . $parent . "/" . $directory) { analyseTexturesPacksDir($materails . "/" . $parent, $directory); } else { $directory =~ s/\.\w*$//g; $texture= lc($parent . "/" . $directory); $textures{$texture}=$parent . "/" . $directory; } } } closedir($dirname); } sub loadTexturesPacks { my ($materials)=@_; unless (opendir(MATERIALS,$materials)) { die("$materails introuvable"); } while ($directory=readdir(MATERIALS)) { if (($directory ne ".") and ($directory ne "..")) { if (-d ($materials . "/" . $directory)) { analyseTexturesPacksDir($materials, $directory); } } } closedir(MATERIALS); } #Analyse le fichier de texture d'une map sub analyseTextureFile { my ($fichier, $materials, $cible)=@_; local($ligne,$target); unless (open(TEXTURES,$fichier)) { die("$fichier introuvable"); } $ligne=<TEXTURES>; #La première ligne c'est les titres des colonnes while ($ligne=<TEXTURES>) { chomp($ligne); $ligne =~ s/\\/\//g; $ligne=lc($ligne); $ligne =~ s/^([^\s]*)\s.*$/$1/g; if (defined($textures{$ligne})) { $rep=$textures{$ligne}; $fichier=$textures{$ligne}; $rep=~ s/^([^\/]*)\/(.*)$/$1/; $fichier=~ s/^([^\/]*)\/(.*)$/$2/; $target=$cible . "/materials"; if (! (-e $target)) { mkdir($target, 0777); } while ($rep ne $fichier) { $target = $target ."/". $rep; if (! (-e $target)) { mkdir($target, 0777); } $rep=$fichier; $rep=~ s/^([^\/]*)\/(.*)$/$1/; $fichier=~ s/^([^\/]*)\/(.*)$/$2/; } $cmdline="cp -p " . $materials . "/" . $textures{$ligne} . ".* " . $target; `$cmdline`; } } } #Code principal $mapDir="/home/nosferatu/HL2MapAnalyser/Packs"; $mapCible="/home/nosferatu/HL2MapAnalyser/Cible"; $mapTextures="/home/nosferatu/HL2MapAnalyser/Textures"; loadTexturesPacks($mapDir . "/materials"); my ($map); unless (opendir(MAPS,$mapDir . "/maps")) { die($mapDir . "/maps introuvable"); } while ($map=readdir(MAPS)) { if ($map =~ /\.bsp/) { if (-f ($mapDir . "/maps/" . $map)) { $map=~ s/\.bsp*$//g; mkdir($mapCible . "/". $map, 0777); mkdir($mapCible . "/". $map . "/maps", 0777); `cp -p $mapDir/maps/$map.* $mapCible/$map/maps/` ; if (-e ($mapTextures . "/" . $map . ".txt")) { analyseTextureFile($mapTextures . "/" . $map . ".txt", $mapDir . "/materials",$mapCible . "/". $map); } else { print "Can't find " . $map . ".txt\n"; } } } } closedir(MAPS); faudra que je le perfectionne un poil .... mais bon d'ici la sortie de HL² et l'arrivée du SDK permettant de créer des maps, les choses auront probablement changées donc ... |
|
|
|
Nosferatu Les Textures Utilisées Par Une Map Cs:source ? 27/10/2004 - 09:31:12
V3nom décompilation du GCF (si gcf il y a ) avec l... 27/10/2004 - 17:12:06
Chapo Voir gcf scape dans la rubrique downloads 27/10/2004 - 17:34:25
V3nom j'ais hésité à marquer "cf section dow... 27/10/2004 - 17:39:44
Nosferatu et ça marche pour du cs:source votre truc ?
j... 27/10/2004 - 18:08:05
Chapo Ha ben non, ça marchera pas
Si tu veux conn... 27/10/2004 - 18:13:31
Nosferatu j'ai testé et non ça ne colle pas ....
en ... 27/10/2004 - 18:19:43
V3nom et pour les textures dites "de base" tu ... 27/10/2004 - 18:25:56
Nosferatu pas sur le serveur
y a pas de gcf sur le serveur... 27/10/2004 - 18:31:23
Acidounet Pour information la structure sur les serveurs lin... 27/10/2004 - 18:43:51
V3nom Source SDK 06/11/2004 - 11:25:27
Chapo Ca mériterait une ch'tite news ça
Tout ... 06/11/2004 - 11:40:02
V3nom inaperçu car on en est toujours au même point...... 06/11/2004 - 11:47:09
Nosferatu pour le pre SDK il se download ?
paske j'avai... 06/11/2004 - 14:41:02
V3nom en fait c'est une fenettre suplémentaire de s... 06/11/2004 - 14:48:32
Nosferatu han viens de voir qu'il était disponible via ... 06/11/2004 - 14:49:34
Chapo Mouais...Sauf qu'il faut avoir cs:source pour ... 06/11/2004 - 17:51:37
Nosferatu T'en as pas besoin
bon j'ai fait ma prem... 06/11/2004 - 18:33:08![]() ![]() ![]() |
|
Lo-Fi Version |
Skin © Chapo
|