Комментарии проекта Программирование
4 -

Облегчить одинаковые длинные тексты которые повторяются?

» Программирование
Всем привет, я хочу ускорить работу при печати на документе обычном txt на рабочем столе. Создать глобальную переменную типа в javascript или php. который позволит мне хранить значения. Как это можно сделать на обычном txt. Иными словами текстовой файл который будет работать на всех компьютерах и не требовать дополнительных программ. Плюс хранит эти переменные со значением. Удобно можно и на Word будет использовать. Как такое можно сделать? Возможно ли?
Nikolay36 #1 - 2 months ago 0
Голосов: +0 / -0
ScorpioT1000, Я решил свою проблему с помощью html и javascript. Всё вопрос закрыт.
ScorpioT1000 #2 - 2 months ago (изм. ) 0
Голосов: +0 / -0
Файл - это просто данные. Исполнять их просто так никто не будет, это должно быть предусмотрено, как в случае открытия html браузером или скрипта его программой-интерпретатором

Ты можешь генерировать файл каждый раз заново, когда тебе это надо, из какого-то исходного кода-шаблона
Nikolay36 #3 - 2 months ago 0
Голосов: +0 / -0
ScorpioT1000, и даже в играх работает? Которые читают txt? Файл
ScorpioT1000 #4 - 2 months ago (изм. ) 0
Голосов: +0 / -0
Попробуй html файл, например, там есть жаваскрипт и открывается в любом браузере) и сделать можно всё, что позволяют веб технологии.
Не обязательно верстать, хватит завернуть в теги <body><pre> для всего текста, а внизу код в тег <script> для манипуляций с ним.
8 -

Что за объект или integer вызывает фатал на Варкрафт III?

» Программирование
Карта работала нормально, потом сама по себе начала вызывать фатал? Что за объект или целочисленную требует фатал непонятно. Картинку прикрепил.
goodlyhero #6 - 2 months ago 0
Голосов: +0 / -0
Кнопка? у геройской абилки в плюсике потерялась, возможно. Я не знаю как и почему. Возможно - стала жертвой мемхака.

А может ей просто поставили некорректную buttonpos
Nikolay36 #7 - 2 months ago (изм. ) 0
Голосов: +0 / -0
вот прикрепил текстовой файл из папки errors

Nikolay36, вот прикрепил текстовой файл из папки errors
goodlyhero #8 - 2 months ago 0
Голосов: +0 / -0
В таких ситуациях нужно как минимум приложить лог из папки Errors
Мы, конечно, ясновидящие, но не настолько.
3

Как быстро вписывать конец тега.

» Программирование
Возможно глупый вопрос, но ответ на разных сайтах я не нашел.
Как сделать так чтобы конец тега к примеру </h1> сразу вписывался после написания <h1>. Пишу в программе notepad++. Возможно есть какой-то хоткей?
Просто в разных обучающих видео видел как человек набирал начало тега,то автоматом писался сразу конец.
Вот пример в видео www.youtube.com/watch?v=IEDUXFtc-vA&list=PL0lO_mIqDDFUpe6yMy...
На моменте 3:37 - 3:43
h0rde #1 - 2 months ago (изм. ) 0
Голосов: +0 / -0
Hanabishi:
Да, перейди на нормальную IDE. Тот же VS Code все умеет.
Спасибо. Видел,что на разных форумах пишут, что пока ты новичек, то лучше все вручную делать, так сказать набивать руку, чтобы не получилось так, что без автоподставлений и подсказок ты не сможешь ничего написать, но это уже наверное от самого человека зависит.
В любом случае большое спасибо!
Hanabishi #2 - 2 months ago 0
Голосов: +0 / -0
Да, перейди на нормальную IDE. Тот же VS Code все умеет.
Прикрепленные файлы
Roy Mustang #3 - 2 months ago 2
Голосов: +2 / -0
Советую перейти на Visual Studio , куда удобней и больше функций - включая то что ты просишь.
12 -

Что лучше таймер или триггер?

» Программирование
для варкрафт 3 я распаковал код и смотрел код jass самой не лагающей карты, все наверняка знаете это дота. Короче код карты дота полностью сделан на триггерах, ну кроме одного таймера который тикает 999999 секунд. И связи с этим я решил что триггер лучше таймера и быстрее таймера +оптимизирован. Таймер получается хуже триггера? Вот в чём секрет профи.
Extremator #12 - 3 months ago 0
Голосов: +0 / -0
Типа рофл? или что?
Ты сейчас сравниваешь два типа объектов - таймер и триггер.
О чём ты вообще?)) пример хоть бы кинул какой
7 -

1-но событие для функций или несколько событий для каж.функции?

» Программирование
Одно событие для нескольких вызовов функций или для каждой отдельной функции своё событие короче как в GUI.
Пример:
================================= 1) Метод
Условие "НЕСКОЛЬКО ФУНКЦИЙ"
If GetSpellAbilityId == A000 then
call первая функция
endif
if GetSpellAbilityUnitId == A001 then
call вторая функция
endif
if GetSpellAbilityUnitId == A002 then
call третья функция
endif
И так бесконечно вызвать.
return false
Событие
UNIT_CASTER_EVENT_SPELL_EFFECT
Вызывает условие "НЕСКОЛЬКО ФУНКЦИЙ"
===================================== 2) Метод
Условие "ОДНА ФУНКЦИЯ"
If GetSpellAbilityId == A000 then
call первая функция
endif
return false
Событие
UNIT_CASTER_EVENT_SPELL_EFFECT
Вызывает одно условие для одной функции "ОДНА ФУНКЦИЯ"
=======================================================
Из этих двоих методов какой подойдет для стабильной игры в сети друзьями не вызывая торможения
jass_dev #1 - 3 months ago 0
Голосов: +0 / -0
quq_CCCP:
jass_dev, Делается не так, уже обсуждали - триггер со всеми возможными событиями и екзекутом функции из базы данных, функция находится по ID. не быстрее чем по 1 триггеру на кадую способность, но экономит оперативку и гораздо удобнее.
можно ссылку на обсуждение?
quq_CCCP #2 - 3 months ago 0
Голосов: +0 / -0
jass_dev, Делается не так, уже обсуждали - триггер со всеми возможными событиями и екзекутом функции из базы данных, функция находится по ID. не быстрее чем по 1 триггеру на кадую способность, но экономит оперативку и гораздо удобнее.
jass_dev #3 - 3 months ago (изм. ) 0
Голосов: +0 / -0
Nikolay36:
jass_dev, да у меня нет стандартных способностей по ИД есть только 'A000; и дальше. Массив способностей как сделать.?
  1. Создайте масив триггеров
  2. Для каждой способности создайте триггер без событий, но с действием которое нужно выполнить во время каста способности.
  3. Во время инициализации карты, добавьте в массив все такие триггеры, вписав в индекс [Ид способности] - 'A000'.
  1. Создайте триггер с событием UNIT_CASTER_EVENT_SPELL_EFFECT. И в нём запускайте тот триггер, который лежит в массиве по индексу [Ид использованной способности] - 'A000'
Borodach #4 - 3 months ago 0
Голосов: +0 / -0
Есть еще способ, функция call ExecuteFunc( конвертация имени способности в строку). А все способности назвать по вызываемой функции.
Плюс - удобно, просто
Минусы - вроде как, немного медленей. С другими минусами не знаком
Nikolay36 #5 - 3 months ago 0
Голосов: +0 / -0
jass_dev, да у меня нет стандартных способностей по ИД есть только 'A000; и дальше. Массив способностей как сделать.?
jass_dev #6 - 3 months ago 0
Голосов: +0 / -0
Торможения будут зависеть от количества таких скилов, если их мало, то особой разницы не будет. Первый способ более производительней чем второй. В первом у тебя вызывается одна функция (условие) для всех ифов, а во втором для каждого ифа вызывается функция (условие).
Но если тебе важна производительность, то тебе не стоит использовать столбы ифов вовсе. Я бы рекомендовал сделать хеш-таблицу, где в качестве основного ключа выступал бы ИД способности. Ты бы сохранял туда триггеры без событий, но с функциями которые нужно выполнить при использовании способности. А потом, в одном триггере с событием UNIT_CASTER_EVENT_SPELL_EFFECT ты доставал по ИД способности нужный триггер и выполнял его. Если у тебя нет стандартных способностей и все ИД ровные 'A000', 'A021'... Можно сделать еще производительней, сохраняя нужный триггер не в хеш-таблицу, а в массив.В таком случае, индекс в массиве для нужной способности будет равен ID - 'A000'.
SomeFire #7 - 3 months ago -1
Голосов: +0 / -1
Посмотри, как сделано в дотке.
2

[C#] Быстрая работа с цветами изображений?

» Программирование
Есть C# и WinForms, нужно относительно без задержек менять параметры картинок вроде яркости, цветового баланса и т.д., и сразу же смотреть результат. Насколько мне известно, нативный GDI+ работает через GetPixel, это очень медленно. Есть идеи? Напрягать DirectX\WPF\Unity, возможно, излишне для такой маленькой задачи.
build #1 - 8 months ago 0
Голосов: +0 / -0
Hanabishi, да, Bitmap, альтернатив не знаю. Про LockBits тоже думал, но мало использовал.
Hanabishi #2 - 8 months ago 1
Голосов: +1 / -0
Под картинкой что подразумевается? Судя по функции GetPixel имеется в виду тип Bitmap. Тогда проще всего вызывать LockBits, выполнять нужные действия с байтовым представлением, а потом UnlockBits.
1

[Javascript] Unexpected end of JSON input

» Программирование
Пишу бота для своего Discord сервера, с JS и Node знаком 3 дня. По этому наверняка упускаю что-то из внимания или понимания, буду рад если кто-то сможет помочь.
Суть проблемы с получением данных вида JSON. Делаю Get на получение ответа от сервера, записываю в .json файл. Пытаюсь обработать полученные данные, вот в этом блоке, что заключён в Promise есть проблема. По моим наблюдениям, ни с получением данных ни с их обработкой проблемы не возникает по отдельности, если часть кода с получением данных закомментировать и самому заполнить json, то всё работает. Или же наоборот, если закомментировать обработку, но запустить получение то всё так же будет работать.
Я подумал, что проблема в асинхронном получении данных и обернул обе части в Promise, но проблема не ушла.

Читать далее...
DarkLigthing #1 - 1 year ago 0
Голосов: +0 / -0
Проблема решена, оказывается у fs.appendfilesync есть проблемы с заполнением пустых файлов. Замена на fs.writeFileSync решило проблему.
4

Отказано в доступе

» Программирование
Хотел установить pyTelegramBotAPI для питона, вбил в консоль pip install pyTelegramBotAPI и и пишет,что отказано в доступе.
+ не работает эхо бот с командами из pyTelegramBotAPI, наверное не работает по причине не установленного pyTelegramBotAPI
xgm.guru/files/988/245718/bot.py_p.png сам код эхо бота.
h0rde #1 - 1 year ago 0
Голосов: +0 / -0

Или я совсем дубень,или что-то не так делаю

Вся таже ошибка
Прикрепленные файлы
Msey #2 - 1 year ago 0
Голосов: +0 / -0
точнее командную стройку?
строку*
именно
h0rde #3 - 1 year ago 0
Голосов: +0 / -0
получается я должен открыть sublime text от имени администратора?

точнее командную стройку?

строку*
Msey #4 - 1 year ago (изм. ) 0
Голосов: +0 / -0
Код лучше скопировать под кат
кат
((
//code
))

по первой проблеме: ну там очевидно не от имени администратора запускаешь приложение, либо директорию какую-нибудь специфическую выбрал.
15

Проблема telegram bot

» Программирование
Всем привет!Пишу бота для телеграмма на питоне.Все нужное установил и все работало.Ибо делал бота ,но гораздо легче.И вылетает ошибка.Приложу скрин ошибки и кода.Очень надеюсь на вашу помощь!!!
h0rde #1 - 1 year ago 0
Голосов: +0 / -0
Большое спасибо!
ScorpioT1000 #2 - 1 year ago (изм. ) 0
Голосов: +0 / -0

На 1:25 он рассказывает что за конфиг youtu.be/M8fhrtvedHA?t=84
Автор даже не с начала смотрел, жесть какая... и это хаудихо, который совсем для младенцев)
h0rde #3 - 1 year ago 0
Голосов: +0 / -0
Нет~Vlod:
как его записать
Так?
» код
import telebot
import config
import random

TOKEN =('1265372487:AAH2NG5shrumYPmf-hHI75WorlKr6bvDUg')

bot = telebot.TeleBot(TOKEN)
@bot.message_handler(commands=['start'])
def welcome(message):
	sti = open('static/welcome.webp', 'rb')
	bot.send_sticker(message.chat.id, sti)
	
	bot.send_message(message.chat.id, "Добро пожаловать,{0.first_name}!/nЯ - <b>{1.first_name}</b>,бот созданный быть лохом".format(message.from_user, bot.get_me()), parse_mode='html')
@bot.messsage_handler(content_types=['text'])
def lalala(message):
	bot.send_message(message.chat.id, message.text)

bot.polling( none_stop = True)
откуда ты скопировал весь этот код / скачал пайтоновские сурсы
Может это?

код из видео с ютуба www.youtube.com/watch?v=M8fhrtvedHA
Vlod #4 - 1 year ago (изм. ) 0
Голосов: +0 / -0
как его записать
Так?
» код
import telebot
import config
import random

TOKEN =('1265372487:AAH2NG5shrumYPmf-hHI75WorlKr6bvDUg')

bot = telebot.TeleBot(TOKEN)
@bot.message_handler(commands=['start'])
def welcome(message):
	sti = open('static/welcome.webp', 'rb')
	bot.send_sticker(message.chat.id, sti)
	
	bot.send_message(message.chat.id, "Добро пожаловать,{0.first_name}!/nЯ - <b>{1.first_name}</b>,бот созданный быть лохом".format(message.from_user, bot.get_me()), parse_mode='html')
@bot.messsage_handler(content_types=['text'])
def lalala(message):
	bot.send_message(message.chat.id, message.text)

bot.polling( none_stop = True)
откуда ты скопировал весь этот код / скачал пайтоновские сурсы
Может это?
Msey #5 - 1 year ago 0
Голосов: +0 / -0
Для начала расскажи, откуда ты скопировал весь этот код / скачал пайтоновские сурсы
После этого уже можно начинать расследование по токенам
ScorpioT1000 #6 - 1 year ago (изм. ) 0
Голосов: +0 / -0
не знаю, ты же его импортировал конфиг в код не просто так
h0rde #7 - 1 year ago 0
Голосов: +0 / -0
а как сделать этот токен вне кода

или как его записать
Msey #8 - 1 year ago 0
Голосов: +0 / -0
Вместо config.token впиши строчку токен, которая у тебя ниже
ScorpioT1000 #9 - 1 year ago (изм. ) 0
Голосов: +0 / -0
h0rde, конфиг и сам токен в нём должен быть где-то вне питон кода
Hanabishi #10 - 1 year ago 0
Голосов: +0 / -0
ScorpioT1000, это и так понятно. Токен видимо с конфига должен подтягиваться. Но тут человек явно вообще сам не понимает что делает.
ScorpioT1000 #11 - 1 year ago 0
Голосов: +0 / -0
Hanabishi, он так не заработает. У него там не config.TOKEN, а просто TOKEN - видимо, другая переменная
Hanabishi #12 - 1 year ago (изм. ) 0
Голосов: +0 / -0
Вроде не надо иметь великие познания, чтобы понимать, что токен надо вписывать ДО того места, где он используется. Какой толк его вписывать после ошибочной строки? До туда из-за ошибки даже выполнение не доходит.
h0rde #13 - 1 year ago 0
Голосов: +0 / -0
я вписал значение токена и почему-то ошибка
ScorpioT1000 #14 - 1 year ago 0
Голосов: +0 / -0
Он всё идеально описал человеческим языком, что именно не понятно?
5

Итераторы и yield в C#

» Программирование
Пока вирусы и синяки гуляют по улице, расскажу вам про итераторы и не менее страшную вещь как yield. Достаточно непонятная и нечасто используемая тема у начинающих дотнет разработчиков. Итераторами можно отстрелить себе ногу, при этом, не поняв, что вообще происходит в округе. Го сюда

Читать далее...
PornoMishka #1 - 2 years ago 0
Голосов: +0 / -0
+1 за асинхронность
Nerevar #2 - 2 years ago 0
Голосов: +0 / -0
На мой взгляд стоит добавить к описанию оператора yield пример того, во что он превращается на самом деле, как [здесь]
Bornikkeny #3 - 2 years ago 2
Голосов: +2 / -0
Асинхронность на .net 4.0 и 4.5> очень будет интересна
Msey #4 - 2 years ago 2
Голосов: +2 / -0
Если кому не сложно, то напишите, какие бы статьи были бы вам интересны. Пока есть свободное время, попробую написать парочку
Bornikkeny #5 - 2 years ago 2
Голосов: +2 / -0
Хорошая статья
3

Как работают знаки сравнения, больше, меньше?

» Программирование
В сравнении двух чисел мы обычно используем оператор " if ", который при истинности (по сути единица) выражения запускает код, который находится внутри, а при ложном пропускает этот код. Вроде всё просто сравнение, но как компьютер понимает что два числа равны или больше, или меньше и как работает этот оператор " if "?
В ассемблере есть такая команда CMP, которая сравнивает два числа, там же сравнивание идёт по следующему алгоритму:
CMP A, B
  1. Из A вычитается B

Читать далее...
Ev3nt #1 - 2 years ago 2
Голосов: +2 / -0
Также прочитай про условные и безусловные переходы: jmp, ja, jb, je, jnz/jne и т.д.
PT153 #2 - 2 years ago (изм. ) 0
Голосов: +0 / -0
Обычный goto. Если флаг 1, то goto в такой лейбл, если 0, то в другой. В ассемблере MIPS есть специальные функции сравнения.
ScorpioT1000 #3 - 2 years ago (изм. ) 0
Голосов: +0 / -0
Почитай про boolean и как работают его операции. Он не связан с числовыми типами (кроме Си, но не будем трогать магию слабой типизации), советую почитать про типизацию и приведение типов в C++. Дальше можно переходить к тому, что такое int32/64, а дальше ieee float

Крайне не рекомендую объединять логические и численные операции - разбираться в этом потом очень больно, даже самому себе через пару месяцев
2

Покраска отдельно каждого символа на С++

» Программирование
Сразу предупрежу - я только начал изучать С и не нужно помидоры кидать в меня.
имеем к примеру -
std::string WantBuyApples = u8"я хочу купить %s яблок";
вот вопрос в этом - как перекрасить каждое отдельное слово (не важно в какой цвет и т.д.) и вообще реально ли это? Или все делается в самом printf?
Drulia_san #2 - 2 years ago (изм. ) 0
Голосов: +0 / -0
Прежде всего запомни, что всё в C и C++ это цифры, байты и биты, ничего более. Всё состоит из фундаментальных типов. Стандартные библиотеки, позволяющие использовать строки, контейнеры и прочие ништяки не умеют работать с графикой и не предназначены для работы с ней, это просто данные, в свою очередь тоже основанные на числовых фундаментальных типах. Так и строка std::string это просто контейнер для динамического массива char'ов, которые являются по сути числами размером в один байт. Числа не знают какого они цвета, формы, шрифта, они просто хранят в себе информацию, в данном случае текст. Окрасить текст в цвета можно в зависимости от того где ты этот текст выводишь. Консоль на винде в такое не умеет, а если умеет то косо и криво, и вообще с этим играться бесполезно. Консоль на линуксе умеет в цвета, там для этого есть escape-последовательности которые ставятся перед текстом, подобно цветовым кодам в варкрафте. Играйся с winapi или лучше Qt, в последнем вообще в html отображаемый текст форматировать можно.