- Регистрация
- 4 Апр 2025
- Сообщения
- 24
- Реакции
- 0
- Баллы
- 1
- Город
- Санкт-Петербург
- Веб-сайт
- paxgame.ru
- Discord
- nicolayka
Я бы хотел вам рассказать про подгрузку текстуры с сайта как на примере скинов в Майнкрафте.
Пожалуй начнем, я не буду объяснять как это сделать на примере Java весь код для подгрузки текстуры находится в клиенте( EntityPlayer подсказка Плащ).
Я лишь выложу веб часть, для загрузки текстуры на сервер, написано на PHP!
Обновлен код загрузки текстуры на сервер, теперь можно выбрать что мы хотим загрузить!
Разберем функционал! Конечно он не слишком богат не все же для новичков сойдет
Тут у нас переменная $player содержит введенное имя пользователя если имени нету то используется
имя Player, за проверку имени отвечает конструкция if else
Тут в $uploaddir мы указываем путь где будут хранится загруженные файлы, $temp=$_FILES['userfile']['name']; $filename = $player.'.png'; $temp = $filename; тут у нас происходит переименование файла загружаемого на сервер.
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile); Ну и конечно загрузка на сервер с параметрами переменной $uploadfile
Как это можно использовать?
Да очень просто, к примеру как систему скинов или плащей, или подгружать текстуры мечей и други предметов с сайта тем самым дать пользователям возможность нарисовать свой собственный меч и т.д.
Вот простой пример реализации на Java:
Пожалуй начнем, я не буду объяснять как это сделать на примере Java весь код для подгрузки текстуры находится в клиенте( EntityPlayer подсказка Плащ).
Я лишь выложу веб часть, для загрузки текстуры на сервер, написано на PHP!
Обновлен код загрузки текстуры на сервер, теперь можно выбрать что мы хотим загрузить!
PHP:
<center>
<form enctype='multipart/form-data' action='' method=post>
<br />
<p>Ваш ник нейм: <input type=text name='username'></p>
<br />
<p><input type="radio" name='NameRadioButton' value='1'> Скин
<br />
<input type="radio" name='NameRadioButton' value='2'> Плащ
<br />
<input type="radio" name='NameRadioButton' value='2'> Щит</p>
<input type=file name='userfile' size=9999>
<input type=submit value='Сохранить'></form>
</center>
<?
$player = $_POST['username'];
if($player == NULL){
$player = 'Player';
}
else {
$player = $_POST['username'];
}
$temp=$_FILES['userfile']['name'];
$filename = $player.'.png';
$temp = $filename;
// параметр отвечающий за выбор юзера!! от 0 до 3
$user_var = $REQUEST['NameRadioButton'];
########################################
// для скина
$uploaddirSKIN = "mcFiles/texture/skin/";
// для плащя
$uploaddirCLOAK = "mcFiles/texture/cloak/";
// для предмета
$uploaddirSHIELDS = "mcFiles/texture/shields/";
########################################
// если выбран скин
if($user_var == 1){
$uploadfile = $uploaddirSKIN . $temp;
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
}
// если выбран плащ
if($user_var == 2){
$uploadfile = $uploaddirCLOAK . $temp;
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
}
// если выран щит
if($user_var == 3){
$uploadfile = $uploaddirSHIELDS . $temp;
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
}
?>
PHP:
<center>
<form enctype='multipart/form-data' action='' method=post>
<br />
<p>Ваш ник нейм: <input type=text name='username'></p>
<br />
<input type=file name='userfile' size=9999>
<input type=submit value='Сохранить'></form>
</center>
PHP:
<?
$player = $_POST['username'];
if($player == NULL){
$player = 'Player';
}
else{
$player = $_POST['username'];
}
$uploaddir = "files/texture/icon/sword/";
$temp=$_FILES['userfile']['name'];
$filename = $player.'.png';
$temp=$filename;
$uploadfile = $uploaddir . $temp;
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
?>
PHP:
$player = $_POST['username'];
if($player == NULL)
{
$player = 'Player';
}
else
{
$player = $_POST['username'];
}
Тут у нас переменная $player содержит введенное имя пользователя если имени нету то используется
имя Player, за проверку имени отвечает конструкция if else
PHP:
$uploaddir = "files/texture/icon/sword/";
$temp=$_FILES['userfile']['name'];
$filename = $player.'.png';
$temp = $filename;
$uploadfile = $uploaddir . $temp;
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile); Ну и конечно загрузка на сервер с параметрами переменной $uploadfile
Как это можно использовать?
Да очень просто, к примеру как систему скинов или плащей, или подгружать текстуры мечей и други предметов с сайта тем самым дать пользователям возможность нарисовать свой собственный меч и т.д.
Вот простой пример реализации на Java:
Код:
public void updateCloak()
{
//код выдран из EntityPlayer
this.playerCloakUrl = "http://вашсайт.ру/files/texture/icon/sword/" + this.username + ".png";
this.cloakUrl = this.playerCloakUrl;
}