Как изменить тип файла txt на lua

Jump to: navigation, search

From Data Realms Wiki

Jump to: navigation, search

Russian:Cortex Command Lua Scripting Tutorial Синтаксис
Если ты не знаешь как использовать Lua, начни отсюда.

Russian:Lua Datatypes Типы данных
Описание типов данных, использующиеся в Lua.

Russian:List of all Lua functions Функции
Список известных функций.

Russian:LuaDocs/Index Список объектов
Список всех совместимых с Lua объектов.

Contents

  • 1 Вступление
  • 2 Начало
    • 2.1 Создание Lua файла
    • 2.2 Прикрепление скрипта к объекту
  • 3 Основы программирования Lua
    • 3.1 Комментарии
    • 3.2 Типы данных
    • 3.3 Переменные
    • 3.4 Операторы
    • 3.5 Таблицы
    • 3.6 Оператор For
  • 4 Cortex Command Lua stuff
    • 4.1 Функции скрипта
    • 4.2 Команды
    • 4.3 Указатели
  • 5 Функции и свойства в Cortex Command Wiki
  • 6 Пример скрипта
    • 6.1 Мина

Вступление

Автор — Ken «CaveCricket48» Do

Переводчик — Программист/ximximik

Этот учебник научит вас, как использовать Lua в Cortex Command. Он написан для людей, которые не встречилались раньше с программированием совсем, и поэтому в нем не будут использованы сложные слова, которые есть в других учебниках. Лучше будет, если вы уже будете знать как работать с ini-кодом, прежде чем приступите к изучению программирования.

Начало

В Cortex Command, Lua позволяет объектам делать то, что они обычно не были бы в состоянии сделать или создать особенные эффекты.

Создание Lua файла

Принцип работы скриптов Lua в Cortex Command состоит в том, что скрипты присоединены к объектам, созданным с помощью ini. Чтобы сделать файл Lua в простом блокноте в Windows, просто создайте новый текстовый файл, перейдити в меню «Файл», «Сохранить Как…», измените «Тип файла:» на «Все файлы» , и измените «.txt» в имени файла на «.lua». Если нет никакого расширения, просто добавьте «.lua» в конце имени файла. Потом нажмите «Сохранить». Вы создали файл Lua.

Совет от переводчика: Используйте Notepad++ вместо стандартного блокнота, так как в нем показывается весь синтаксис Lua, и вообще в нем легче работать.

Прикрепление скрипта к объекту

Чтобы прикрепить Lua скрипт к объекту, созданному в ini файле, просто поместите «ScriptPath = <путь к файлу Lua>» в блоке кода объекта с соответствующим табулированием.

Основы программирования Lua

Комментарии

Комментарии в скрипте Lua — строки текста, которые не читаются игрой/программой, и в основном используются, чтобы аннотировать скрипт. Чтобы аннотировать, сделайте 2 дефиса, и что-нибудь после них на той же самой строке — комментарий.

-- Это коменнтарий

Типы данных

Основная статья: Типы Данных

Типы данных — типы данных, которые используются для переменных и свойств. В CC есть 5 основных типов данных: числа, текст, boolean (логическая переменная), вектор, и ноль (nil). Первые 2 — понятно из названия то это. boolean — логическая переменная, т.е. её значения это истина (true) или ложь (false). Вектор в CC — координаты (X, Y). Числовые данные используются, печатая только числа. Текст используется при наличии пары кавычек («») с текстом между ними. Вектор используется, следуя за словом «Vector » 2 числами разделенными запятой в двух круглых скобках. Ноль — обозначается как «nil» (чтобы не быть перепутанным с числом ноль).

--Числа
1234

--Текст
"text"

--Логическая переменная
true
false

--Векторы
Vector(1,1)
Vector(5,2)
Vector(-7,6)

--Ноль (ничто)
nil

Переменные

Переменные — это то в Lua, чему Вы можете дать значение. Они используются для того, чтобы хранить информацию, чтобы Вы могли снова вызвать это позже. Переменная состоит из своего имени, одного знака «=», и значения.

X = 5

Чтобы изменить переменную, просто напечатайте ту же самую переменную снова с новым значением:

X = 2

Вы можете также заставить переменную иметь то же самое значение что и другая переменная, устанавливая ее значение как имя другой переменной:

A = 5
X = A

В результате X будет равен 5.

Есть 2 типа переменных в CC: глобальная переменная и локальная. Глобальные переменные могут быть изменены скриптом любого объекта, вновь меняющие значение, и только одна переменная с таким именем может существовать. Глобальные переменные похожи на те выше в примерах.

Локальные переменные — переменные, у которых могут быть множественные копии, каждая из них привязана к объекту со скриптом, который создал их. Чтобы создать локальную переменную, напечатайте «local» перед именем переменной, разделив их пробелом. Установка значения локальной переменной равного значению другой локальной переменной работает подобным способом как и у глобальных переменных.

local varA = 5
local varB = varA

Это действие сделало переменную «varB» равной 5. Заметьте, что слово «local» не использовалось, когда мы выбирали переменную «varA».

Другое полезное свойство переменных — то, что Вы можете использовать переменные, чтобы установить определенное свойство в объект, и хранить объект в переменной. Храня объект в переменной, с ним легче взаимодействовать и легче вызывать указателем. Чтобы использовать переменные, для изменения свойства объекта, Вы нуждаетесь в переменной, которая является определенным указателем на объект (мы разберем это позже), сопровождающаяся точкой, названием свойства, знаком «=», и значением.

thing.GetsHitByMOs = false

«thing» это указатель на объект, «GetsHitByMOs» это свойство объекта в ini, и «false» это значение.

Обычно используют указатель, который уже определен как «self». Указатель всегда обращается к объекту, к которому присоединен скрипт.

self.GetsHitByMOs = false

Операторы

Принцип работы Lua (и программирования вообще), это проверка операторов, чтобы увидеть, являются ли их значение истинным (true) и делающим что-либо если это так (или если не так). Давайте посмотрим на код ниже.

if X == 1 then
<содержимое>
end

Этот код проверяет, если переменная «X» равна «1», то совершает «содержимое» («<содержимое>» не фактическое действие, только указатель места заполнения для других команд, до которых мы доберемся позже), если оператор будет истиной. Обратите внимание на «end» внизу блока кода, который говорит, что «<содержимое>», часть этого оператора, закончено. Если Вы не напечатаете «end» после оператора (конец оператора после <содержимого> тоже), то Вы получите ошибку. Также заметьте, что есть 2 знака «=» в «строке «if». «==» нужно для того, чтобы проверить равенство, и «=» для того, чтобы установить значение переменной/свойства. Символы условий:

-- равно
==

-- неравно
~=

-- меньше
<

-- больше
>

-- меньше или равно
<=

-- больше или равно
>=

Внутри операторов «if», могут находится операторы «else». Эти операторы проверяют, выполняется ли условие оператора «if», и если оно не истинно (не выполняется), то
тогда совершаются действия в их содержимом.

if X == 1 then
<содержимое>
else
<содержимое>
end

Условие «Elseif» похоже на второй «if» оператор и работает также:

if X == 1 then
<содержимое>
elseif X == 2 then
<содержимое>
end

В операторе могут быть много условий «elseif», но только одно «else».

Таблицы

Списки (также называемые как таблицы и массивы) похожи на переменные, у которых могут быть множество значений. Чтобы создать список, напечатайте название списка сопровождаемое знаком «=» и парой скобок {}.

thelist = {}

Добавление значения к списку подобно присвоению/изменению значения переменной. Вы должны напечатать имя списка, сопровождаемое парой квадратных скобок с заданным номером в списке, знаком «=», а затем значением.

thelist[1] = 1234
thelist[2] = 37065

Числовой символ с именем списка перед этим, говорит число элементов в списке.

numbercheck = #thelist

Тот же самый список как в вышеупомянутых примерах, имеет значение переменной «numbercheck» равное 2.

Чтобы очистить все значения списка, напечатайте имя списка, знак «=» и пустую пару скобок. Чтобы очистить только одно значение, установите это значение в ноль.

-- Очистка всего списка
thelist = {}

-- Очистка одного значения
thelist[1] = nil

Списки могут быть глобальными и локальными, как переменные.

thelist = {}
local thesecondlist = {}

Оператор For

Поскольку операторы используются, чтобы сделать множество повторяющихся действий в одном коротком участке памяти скрипта. Формат написания оператора «For» ниже.

for <переменная> = <начальное число>, <число как много раз совершать действия> do

Пример использования оператора «for».

for i = 1, 5 do
<содержимое>
end

Давайте рассмотрим каждую часть подробно:

for
— Стартовое ключевое слово

i = 1
— «i» — временная переменная, которая используется оператором «for», для сохранения, сколько раз он совершил действия (включая 1). «i» может быть изменен на любое имя как переменная. «1» это начальное значение для отсчета.

5
— Кол-во повторений «<содержимого>».

Чтобы прервать оператор «for», включите «break» в оператор «if», который проверяет значение оператора «for» для соблюдения условия.

for i = 1, 5 do
     if i == 3 then
      break
     end
end

Cortex Command Lua stuff

Функции скрипта

Функции скрипта — это части скрипта, которые выполняются только, когда объект был создан, когда он существует, или когда уничтожен. Функции тоже требуют «end» как и операторы условий.

-- <Содержимое> в промежутке между "function Create(self)" и "end" будет работать, только когда объект будет создан. (происходит только один раз)
function Create(self)
<Содержимое>
end

-- <Содержимое> в промежутке между "function Update(self) и "end" будет работать, только когда этот объект существует.
function Update(self)
<Содержимое>
end

-- <Содержимое> в промежутке между "function Destroy(self) и "end" будет работать, только когда этот объект уничтожается. (происходит только один раз)
function Destroy(self)
<Содержимое>
end

Команды

Команды — часть Lua, которые уже встроены в игру и взаимодействуют с содержимым в Cortex Command. Формат команды — название группы команды, двоеточие, имя команды, и её параметры (нужные данные для этого, чтобы это работало) разделяются запятыми в круглой скобке. Большинство названий групп команд Cortex Command могут быть заменены указателем чем-нибудь на то, с чем они смогут взаимодействовать. Пример команды ниже:

anactor:AddImpulseForce(Vector(0,-10),Vector(0,0))

Информация о команде из Википедии Cortex Command Lua:

AddImpulseForce
Adds impulse force (or instant momentum) to this MovableObject for the next time Update() is called.   

Arguments:   

   - An Vector with the impulse force vector that will directly be added to this MovableObject's momentum next Update(). In kg * m/s.   
   - A Vector with the offset, in METERS, of where the impulse is being applied relative to the center of this MovableObject.

Return value:   

None.   

«anactor» — указатель на актора, «AddImpulseForce» — название команды, и содержимое круглой скобки — данные, необходимые для работы команды. В блоке информации о команде, «Return value», — это то, что выводит команда, когда она выполняется.
Большинство команд в Cortex Command может быть найдено в wiki, так что убедитесь проверив это.

Указатели

Хорошо, мы наконец добрались до указателей!
В Cortex Command указатели — переменные, которые «хранят» объект в себе. Или Вы можете представить это, как гигантскую стрелку, указывающую на объект. независимо от того, что свойства Вы устанавливаете на указатель или используете функцию на нем, это произведет эффект на тот объект, на который он «казывает.

Есть несколько способов создать указатели. Обычно используют специальный оператор «for», который проверяет все объекты определенного типа и является оператором, который проверяет, является ли объект тем, который вам нужен. Кусок кода скрипта ниже присоединен к объекту, который ищет актора, с именем «Dummy» и затем устанавливает на него указатель, названный «local pointer».

function Update(self)

for actor in MovableMan.Actors do
     if actor.PresetName == "Dummy" then
      local pointer = actor
      break
     end
end

end

Что делает вышеупомянутый кусок — проверяет всех акторов в игре, пока он не находит агента с «PresetName» как «Dummy». Тогда это устанавливает указатель на этого актора как «local pointer» и останавливает оператор «for» с «break». Термин «актор» является указателем на актора, и передан «local pointer» для более простой справочной информации.

Здесь 2 других строки «for», которые получают указатели на устройствах и частицах.

-- Указатель устройств
for item in MovableMan.Items do
end
-- Указатель частиц
for particle in MovableMan.Particles do
end

Функции и свойства в Cortex Command Wiki

Это — ссылка на раздел Cortex Command wiki, который содержит документацию для многих функций и свойств.
Список всех Lua функций

Пример скрипта

Мина

Этот скрипт для простой мины, которая взрывается, когда акторы находятся в пределах определенного расстояния от объекта со скриптом.

-- Пока объект существует
function Update(self)

-- Проверка всех акторов
     for actor in MovableMan.Actors do

-- Использует функцию и свойство вектора, чтобы сохранить расстояние между актором и объект со скриптом в переменной.
      local distcheck = SceneMan:shortestDistance(self.Pos,actor.Pos,true).Magnitude

-- Оператор, проверяющий, если проверяемое расстояние (переменная "local distcheck") меньше чем 10. Если так, совершите действие...
        if distcheck < 30 then

-- GibThis() - это функция, которая делает целенаправленную разрушение объекта.
         self:GibThis()

-- Остановка оператора
         break

-- Конец оператора "if".
        end

-- Конец оператора "for".
     end

-- Конец "function Update(self)".
end

Recommended Posts

Aly-M

Vic

    • Share

So I started a new script file called myserver in resources folder. The script didn’t work because the meta.xml file is a text document (Normal Notepad). I tried to Save As «lua source file», but the problem is that I don’t even have this in my list. I only have these two options when trying to save the meta.xml file type. One is «document (*.txt)» and the other is «All files». There’s no LUA in the list. 

Moreover, I downloaded LUA & I have notepad++ that I use in editing only, but original file type is always .txt

What to do?

Link to comment

NegativeIQ

Advanced Member

    • Share

Select type to All files and save it as myserver.lua

EDIT: Since you will be working with many files i suggest you to show file’s extensions in windows. Just google it. Then you will be able to rename your files and their extension with a double click on file name.


Edited September 11, 2016 by NegativeIQ

Added suggestion

Link to comment

_DrXenon

Red-Headed Stepchild

    • Share

open notepad++, choose Language from the toolbar in the top, go to ‘L’ then choose lua, go to your text file, copy the text from it and paste it on the notepad++ then save the file on the notepad++, It will ask you now to save as lua source code or not. — note: do not create a .txt file then edit it, Just open new file in notepad++ and choose lua ad language.

Link to comment

draobrehtom

Punk-@ss B*tch

    • Share

12 hours ago, Aly-M said:

So I started a new script file called myserver in resources folder. The script didn’t work because the meta.xml file is a text document (Normal Notepad). I tried to Save As «lua source file», but the problem is that I don’t even have this in my list. I only have these two options when trying to save the meta.xml file type. One is «document (*.txt)» and the other is «All files». There’s no LUA in the list. 

Moreover, I downloaded LUA & I have notepad++ that I use in editing only, but original file type is always .txt

What to do?

File Explorer — View — Filename Extensions — Check.

Link to comment

Walid

Loc

    • Share

50 minutes ago, draobrehtom said:

File Explorer — View — Filename Extensions — Check.

un-check (because if you check it  you will hide file name extension).

Anyways all what you need to do is:

  • Start Windows Explorer, you can do this by opening up any folder.
  • Click Organize.
  • Click Folder and search options.
  • Click the View tab.
  • Scroll down until you notice Hide extensions for known file types, un-check this line by clicking the check box. 
  • Click OK
  • Now rename the file replace .txt with .lua
Link to comment

draobrehtom

Punk-@ss B*tch

    • Share

1 hour ago, Walid said:

un-check (because if you check it  you will hide file name extension).

J5wgc0GPDUA.jpg


  • Like


    1

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Sign in

Already have an account? Sign in here.

Sign In Now

chapo

chapo

vk.com/chaposcripts


  • #4

Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

  • #6

Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

недавно перешел на 7 винду) вырос на 40 фпс в играх советую от cuta сборку игровую 7 винды

  • #7

недавно перешел на 7 винду) вырос на 40 фпс в играх советую от cuta сборку игровую 7 винды

Я хз, я установливаю 7-ку и неработает ни одна игра, и ещё заметил, что не работает Bandicam, OBS Studio

  • #8

Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

Я хз, я установливаю 7-ку и неработает ни одна игра, и ещё заметил, что не работает Bandicam, OBS Studio

работает просто скачай driver booster кряк и установи драйвера и с ним все полезные проги будут для игр установлены

Shout-Out


  • OverwatchGhost

    💀Overwatch Ghost 💀 — Remove Blizzard’s Anti-Cheat Review Flags on Your Machine

User Tag List


  1. 08-23-2008


    #1

    lethalllama's Avatar

    lethalllama is offline


    Member


    [GUIDE] How to change file types (txt to lua) on Vista

    How to change file types on Vista
    **Warning, this Guide might be common sense to some people, but for new vista less experienced users it can be confusing**

    Make sure you have Winrar installed!!! just google it

    ——————————————————————————————

    I had this problem on my new comp, i wanted to put a script into my server, but i couldnt change it fro ma Txt file to a Lua file as easily as on XP

    So what you want to do first, it find the file you would like to change the file type of

    If its a txt file its usually in

    Administrator>Documents

    So go and find that txt file and right click it, then select

    ‘Add to «Nameofyourfile.rar», then you will see a winrar archive of your file pop up in that same folder, Open it.

    you will see your file in there unmodified, Right click the file and hit ‘Rename’ then delete .txt at the end of it and replace it with what you want it to be, in my case it would be .lua,

    so it should look like ‘yourfilename.lua’ then click off of it, and your done, that will change the file type. =D

    now do what you need do with that file and your done =D


    These ads disappear when you log in.


  2. 08-24-2008


    #2

    uhh just save as then click all files then put filename.lua lolz
    nice try tho.



  3. 08-24-2008


    #3

    lethalllama's Avatar

    lethalllama is offline


    Member


    lulz on vista you cannot select all files, lulz



  4. 10-15-2008


    #4



  5. 10-16-2008


    #5

    Database Evolved Developer:wave:



  6. 10-16-2008


    #6


    I live in a shoe



  7. 10-17-2008


    #7



  8. 10-20-2008


    #8

    erobins's Avatar

    erobins is offline


    Member


    Thanks for trying to help out lethalllama! (+rep)

    However, that is the long way around the problem.

    Here is a much cleaner way to do this.

    — Open Control Panel
    — Click on Appearance and Personalization
    — Click on Folder Options
    — Select the View TAB
    — Uncheck This — Hide extensions for known file types.
    — Click OK

    Now you can change the file extensions in explorer in the file name like in XP!

    Hope this helps someone out!
    Necroman


Similar Threads

  1. Replies: 4

    Last Post: 02-06-2008, 02:39 PM

  2. Replies: 33

    Last Post: 01-12-2008, 09:31 AM

  3. Replies: 7

    Last Post: 12-30-2007, 10:11 PM

  4. Replies: 1

    Last Post: 11-05-2007, 02:39 PM

  5. Replies: 4

    Last Post: 05-06-2007, 05:47 PM

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить тип файла txt на ini
  • Как изменить тип файла txt на bat
  • Как изменить тип файла tif на pdf
  • Как изменить тип файла rtf на doc
  • Как изменить тип файла pptx на ppt

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии